數據結構提綱

學習計算機編程,經常會看到這個等式:程序=算法+數據結構。

算法是用來描述適合用計算機程序來實現的問題——解決方法。算法即便不是該領域大部分問題的中心研究對象,也是許多問題的核心研究對象。大部分算法的重點在於計算中涉及的數據的組織方法——數據結構,因此設計算法離不開數據結構,離開了數據結構的算法就是無本之木,無水之源。

數據結構劃分:

    (1)按照邏輯結構劃分:集合(無邏輯關係)、線性結構和非線性結構。


其中線性結構表示:數據元素之間存在着“一對一”的線性關係的數據結構。

非線性結構表示:相較於線性結構,非線性結構的一個結點元素可能對應多個直接前驅和多個後繼。


    (2)按照存儲結構劃分:順序存儲結構、鏈式存儲結構、索引存儲結構和散列存儲結構。


其中順序存儲結構是指把數據元素放在地址連續的存儲單元裏,其數據間的邏輯關係和物理關係是一致的。

鏈式存儲結構是指數據元素放在任意的存儲單元中,存儲單元可以是連續的,也可以是不連續的。

索引存儲結構是在存儲結點數據的同時,還建立附加的索引表,通過結點的索引號來確定結點存儲地址。

散列存儲結構又稱hash存儲是根據結點的關鍵字計算出該結點的存儲地址的。散列存儲是一種從關鍵字到地址碼的存儲映射方法。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章