數據結構讀書筆記

數據結構讀書筆記
2018年9月17日晚
引言
數據結構是計算機存儲、組織數據的方式,它是指相互之間存在一種或多種特定關係的數據元素的集合。在計算機中,數據元素並不是孤立的、雜亂無序的而是按照一定的內在聯繫存儲起來的,這種數據之間的內在聯繫就是數據結構的組織形式。
數據
數據是指能直接輸入計算機中,被計算機處理的富豪和被計算機操作的對象。總的來說,數據就是能被計算機處理的符號。
數據元素
數據元素是數據結構中的基本單位,它也被叫做元素,結點,記錄等。
數據對象
數據對象是性質相同的數據元素的集合。數據結構是計算機學科的理論基礎之一,也是軟件開發的必備基礎。
數據結構的分類

1.邏輯結構
邏輯結構反映的是數據元素之間的關係,它們與數據元素在計算機中的存儲位置無關,是數據結構在用戶面前的呈現形式。

  1. 集合

  2. 線性結構

  3. 樹形結構

  4. 圖形結構

  5. 存儲結構
    順序存儲
    順序存儲是把邏輯上相鄰的結點存儲在地址連續的存儲單元裏,數據元素之間的關係由存儲單元是否相鄰來實現。
    優點:順序存儲可以提高空間的利用效率,而且對於隨機訪問元素,其效率非常高,因爲邏輯上相鄰的元素,其存儲地址也是緊鄰的,所以可以按元素序號來快速查找某一個元素。
    缺點:順序存儲結構實現元素的插入和刪除,效率會非常的低。因爲如果要插入/刪除一個元素需要將這個位置之後的所有元素後/前移一個位置。
    注意:順序存儲結構在使用時有空間限制,當需要存儲元素的個數多餘預先分配夫人空間時,會出現溢出現象;當元素分配少於預先分配的空間時,又會造成空間浪費。
    鏈式存儲
    優點:插入和刪除操作高效簡潔
    缺點:無法進行元素的隨機訪問。
    注意:鏈式存儲的空間利用率也較低,因爲分配的內存單元有一部分被用來存儲結點之間的邏輯關係。但鏈式存儲在存儲元素時沒有空間限制,順序存儲與鏈式存儲都是按需分配,只是鏈式存儲在需要時方便的分配新空間,不會造成空間不足或浪費。
    索引存儲
    方便數據查找而設計,在存儲結點信息的同時,還建立附加的索引表。索引表存儲兩個字段,一個是關鍵字,一個是地址。這種結構類似於人們常用的字典。
    優點:快速地對數據進行隨機訪問。又因爲在插入刪除操作時,只需要更改索引表中的地址值,不必移動結點,所以在數據更改方面也具有較高的效率。
    缺點:索引結構在建立結點時會額外的分配空間來建立一個索引表,因此降低了空間利用率。
    散列存儲
    又稱哈希存儲結構,是一種力圖將數據元素的存儲位置與關鍵字之間建立確定關係的查找技術。它的基本思想是通過一定的函數關係(散列函數、也稱哈希函數)計算出一個值,將這個值作爲元素的存儲地址。
    優點:訪問速度快
    注意:數據的各種存儲結構都有各自優點,各有用途,不能說哪一種存儲結構比另一種好。

發佈了7 篇原創文章 · 獲贊 8 · 訪問量 2304
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章