本章內容是從全書出發對書中內容進行高度概括和總結,注意把握各種數據結構的同異。另外,也要學會一些基本知識和方法。
- 數據結構的三大部分:
a)數據的邏輯結構:主要分爲三種,分別是 ①線性結構、②樹(層次結構)、③圖(羣結構);
b)數據的物理存儲結構:主要分爲四種,分別是 ①順序存儲、②鏈接存儲、③索引存儲、④散列存儲;
c)對數據的操作,即算法。
總言之,數據結構研究的就是 何種邏輯結構在何種存儲結構下如何實現操作。
2. 抽象數據類型ADT(Abstract Data Type):即數據+結構+操作。
3. 問題→→(分析抽象)→→抽象數據類型的定義→→(表示實現)→→具體數據類型的實現
其中,抽象數據類型ADT的定義,包括邏輯結構的定義和操作的定義;
具體數據類型的實現包括存儲結構的實現和操作的實現。
即在數據結構問題中包括兩個實現,即將邏輯結構用存儲結構實現,將算法用具體操作實現。
4. 算法的特性:
1)有輸入。一個算法必須有0個或多個輸入,它們是算法開始運算前給予算法的量。
2)有輸出。一個算法應有一個或多個輸出,輸出的量是算法計算的結果。
3)確定性。算法的每一步都應確切地、無歧義地定義。
4)有窮性。一個算法無論在什麼情況下都應在執行有窮步後結束。
5)能行性。算法的每一步運算都必須是足夠基本的。
算法和程序不同,程序可以不滿足上述的有窮性。
5. 算法的性能標準:
1)正確性;2)可使用性;3)易讀性;4)健壯性;5)效率;6)簡單性。
6. 算法的效率(算法複雜性度量)