線性表的順序存儲

線性表是零個或者多個數據元素的有限序列。
特性:
數據元素之間是有順序的.
數據元素個數是有限的.
數據元素的類型必須相同.

數學定義:
線性表是具有相同類型的 n( ≥ 0)個數據元素的有限序列(a0,a1, a2, …, an)
ai是表項,n 是表長度。

性質:
a0爲線性表的第一個元素,只有一個後繼。
an爲線性表的最後一個元素,只有一個前驅。
除a0和an外的其它元素ai,既有前驅,又有後繼。
線性表能夠逐項訪問和順序存取。

線性表的操作:
創建線性表
銷燬線性表
清空線性表
將元素插入線性表
將元素從線性表中刪除
獲取線性表中某個位置的元素
獲取線性表的長度

線性表的順序存儲:
線性表的順序存儲結構,指的是用一段地址連續的存儲單元依次存儲線性表的數據元素。

插入元素算法:
判斷線性表是否合法
判斷插入位置是否合法
把最後一個元素到插入位置的元素後移一個位置
將新元素插入
線性表長度加1

獲取元素操作:
判斷線性表是否合法
判斷位置是否合法
直接通過數組下標的方式獲取元素

刪除元素算法:
判斷線性表是否合法
判斷刪除位置是否合法
將元素取出
將刪除位置後的元素分別向前移動一個位置
線性表長度減1
鏈表的容量和鏈表的長度是兩個不同的概念

優點:
無需爲線性表中的邏輯關係增加額外的空間。
可以快速的獲取表中合法位置的元素。

缺點:
插入和刪除操作需要移動大量元素。
當線性表長度變化較大的時候,難以確定存儲空間的容量。

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