數據結構的內容
- 數據結構分類:
- 根據數據元素之間的邏輯關系
(1)集合結構
(2)線性結構
(3)樹形結構
(4)圖狀結構 - 根據數據元素之間關系的不同特性
(1)線性結構:線性表,棧,隊列,字符串,廣義表和數組
(2)非線性結構:樹和圖
存儲結構:
數據元素之間的關系在計算機中有兩種表示方法:順序映像和非順序映象。由此可以得出兩種不同的存儲結構:
(1)順序存儲:借助元素在存儲器中的相對應位置來表示數據元素之間的邏輯關系。
(2)鏈式存儲:借助指針表示數據元素之間的邏輯關系。
歸納總結為:邏輯結構,存儲結構,運算集合。算法
數據結構 + 算法 = 程序算法的特性
(1)有窮性
(2)確定性
(3)可行性
(4)有輸入
(5)有輸出算法評價的標準
(1)正確性
(2)可讀性
(3)健壯性(魯棒性)
(4)高效率與低存儲量需求算法性能分析
時間復雜度
T(n)= O(f(n))
算法的執行時間與所有原操作的執行次數之和成正比。
算法時間復雜度取決于最深循環內包含基本操作的語句的重復執行次數,被稱語句重復執行的次數為語句的“頻度”。空間復雜度
S(n)= O(f(n))
算法執行期間所需要的存儲空間包括3個部分
(1)算法程序所占的空間
(2)輸入的初始數據所占有的存儲空間
(3)算法執行過程中所需要的額外空間