自學c語言第一天筆記

2021-10-09 06:11:29 字數 1126 閱讀 6384

演算法是指對解決方****而完整的描述。(解決問題的操作步驟)

基本特徵:

(1). 可行性:步驟可以實現;執行結果達到預期目的。

(2). 確定性:步驟確定,不摸稜兩可,不准有多義性。

(3). 有窮性:有限的時間完成。

(4). 擁有足夠的情報:演算法在擁有足夠的輸入訊號和初級化資訊時,才是有效的;當有提供的情報不夠時,演算法可能無效。

衡量演算法優劣,包括演算法時間複雜度和空間複雜度。

演算法時間複雜度

執行演算法時間所需要的工作量。

用演算法執行所執行的基本運算次數來度量的。(基本運算次數與問題規模有關)

演算法空間複雜度

執行演算法所需要的記憶體空間。

儲存空間:

(1). 輸入資料所佔儲存空間;

(2).程式本身所佔儲存空間;

(3).演算法執行過程所需要的額外空間。額外空間包括程式執行過程中的工作單元以及某種資料結構所需要的附加儲存空間

為降低演算法空間複雜度主要減少(1)和(3),採用儲存壓縮技術。

相互有關聯的資料元素集合資料和結構

資料:需要處理的資料元素的集合,一般來說,這些資料元素具有某個共同特徵。

結構:就是關係,是集合中各個資料元素之間存在的某種關係(或聯絡)。

前後件關係:直接前驅與直接後繼
資料結構分為資料的邏輯結構和資料的儲存結構。

資料的邏輯結構反映元素之間邏輯關係(前後件關係)的資料結構

資料的儲存結構又稱為資料的物理結構,是資料邏輯結構在計算機儲存空間中的存放方式

數學形式定義——資料結構是乙個二元組:

b=(d,r)

b表示資料結構,d表示資料元素的集合,r是d關係上的集合

r反映d中各資料元素之間的前後件關係

自學第一天

今天第一天自學,雖然已經上了乙個學期的c語言的程式設計課程,但我感覺一切都是假的,拿出一段 都看不懂,可能這個學期的學習只是為了期末考試吧。下定決心要開啟自學之路,一切就再次回到原點,從c語言開始。今天把基礎部分看了一看 學習了輸出printf 轉義字元 定義變數char a int a float...

自學C記錄第一天

自學c記錄第一天 定義數字變數num i 0 i變數復用不用重新再宣告變數了 scanf d num 取使用者輸入的數字 while i 10 printf n printf 請輸入天數 n scanf d num 復用num作為天數的變數,取使用者的輸入數字賦 值給num printf d天是 d...

reids自學 第一天

學習內容 1.mac上安裝redis 2.使用redis的客戶端,簡單的操作string的set和get 疑問 1.redis是否可以支援所有的作業系統?參考資料 官網 其他 學習內容 1.mac上安裝redis 2.使用redis的客戶端,簡單的操作string的set和get step2.tar...