資料結構(C語言版)第一章緒論知識點彙編

2021-10-06 18:31:05 字數 1825 閱讀 6915

一、知識點總結

1、資料項 是資料不可分割的最小標識單位;資料元素是資料的基本單位。

2、資料項  →  資料元素 → 資料。

3、資料結構是指資料元素的集合以及它們之間的關係。

4、計算機所處理的資料一般都具有某種內在聯絡,這是指元素與元素之間存在某種關係。

5、在資料結構中,與所使用的計算機無關的是資料的 邏輯結構。( 解析:物理結構即儲存結構,在不同的計算機上使用都會產生不同的結果,因此與所使用的計算機有關。 而邏輯結構是通用的,在任何不同的計算機上所進行的運算操作都是統一的。 )

6、資料結構包括資料的邏輯結構、儲存結構、資料運算 。

7、資料結構按照邏輯結構可以分為 線性結構、非線性結構。

8、線性結構中元素之間存在 一對一關係;樹形結構中元素之間存在 一對多關係;圖形結構中元素之間存在 多對多關係。

10、在樹形結構中,樹根節點沒有前驅節點,其餘每個集欸但有且只有乙個前驅節點,而後繼節點可以有多個,葉子節點沒有後繼節點。

11、在圖形結構中,每個節點的前驅節點和後繼節點可以有 任意多個。

12、資料的運算最常用的有插入、刪除、排序、查詢、修改。

13、計算機演算法指的是解決問題的有限運算序列。

14、計算機演算法應具備 輸入、輸出、健壯性、可行性、有窮性。

15、乙個演算法中,不論問題規模大小,執行所需時間都一樣,則該演算法的時間複雜度為常量階。

16、資料結構有線性結構、樹結構、集合結構、圖狀結構(網狀結構)等邏輯結構。

二、演算法時間和空間複雜度分析

1、已知某演算法的執行時間為(n³+n²+n)log₂(n+2),n為問題規模,則該演算法的時間複雜度為o(n³log₂n). 2、

for

(i=0

;i)for

(j=0

;j) a[i]

[j]=0;

解析:在迴圈過程中,i的每一次改變,都會使內層迴圈進行m次,則時間複雜度為o

(n*m)

3、

s=0;

for(i=

0;i)for

(j=0

;j) s+

=b[i]

[j];

解析:和第一題的思路一致,時間複雜度為o

(n²)

4、

x=0;

for(i=

1;i)for

(j=1

;j<=n-i;j++

) x++

;解析:當i=

1時,1≤j≤n-

1,執行了(n-

1)次;

當i=2時,1≤j≤n-

2,執行了(n-

2)次;

...當i=n-

1時,j=

1,執行了1次;

綜上共執行了(n-1)

+(n-2)

+...

+1=n

(n-1)/

2=(n²/

2-n/

2)次(等差數列前n項和)

故時間複雜度為o

(n²)

5、

i=1;

while

(i<=n)

i=i*3;

解析:迴圈體中i從1開始,每次變為原來的3倍(1,3,9...

),直到不滿足條件(i<=n)

退出迴圈,那麼在退出之前,假設共進行了k次,則3

^k=n執行最後一次,解得k=log₃n.

綜上,時間複雜度為o

(log₃n)

.

資料結構(C語言版)第2版 第一章 緒論

1.2 使用c語言描述資料結構 1.3 演算法和演算法設計 1.4 演算法分析與度量 2 資料元素 資料的基本單位是資料元素,他是計算機處理或訪問的基本單位。例如 乙個考生名冊中的每乙個學生的記錄,乙個字串中的每乙個字元 乙個陣列的每乙個陣列成分都是資料元素。不同場合資料元素可以有別名,如元素 記錄...

資料結構(c )第一章 緒論

資料處理 乙個實際問題的求解必須滿足各項處理要求,這項任務成為資料處理。計算機不能分析問題並產生問題的解決方案,必須由人類分析問題,確定問題的解決方案,編寫程式,然後讓計算機執行程式獲得問題的解。資料結構問題起源於程式設計。資料表示 將資料儲存在計算機 記憶體 中 資料處理 處理資料設計方案 演算法...

資料結構第一章緒論

緒論主要是對計算機資料結構一書有大致了解,系統的講解資料結構在程式結構的應用,資料結構的相關概念,演算法在程式中的應用,從而從巨集觀上了解資料結構,更有利於以後學習。1 資料結構在程式中的應用 其實乙個公式就可以了解程式和演算法還有資料,即資料結構 演算法 程式,由公式可知資料結構是程式的一部分。2...