第2章 线性表
《數據結構》學習筆記。
第2章 線性表
線性表、棧、隊列、串、和數組都屬于線性結構。線性結構的基本特點是除了第一個元素無直接前驅,最后一個元素無直接后繼之外,其他每個數據元素都有一個前驅和后繼。
2.1 線性表的定義和特點
由n(n>=0)個數據特性相同的元素構成的有限序列稱為線性表。
線性表中元素的個數n(n>=0)定義為線性表的長度,n=0時稱為空表。
同一線性表中的元素必定具有相同特性,數據元素間的關系是線性關系。
對于非空的線性表或線性結構,其特點是:
2.2 案例引入
-1. 一元多項式的運算
———————————————————————————————————————————————————-
-2. 稀疏多項式的運算
只表示非零項。
(1)創建一個新數組C;
(2)分別從頭遍歷比較a和b的每一項:
- 指數相同,對應系數相加,若其和不為零,則在c中增加一個新項。
- 指數不相同,則將指數較小的項復制到c中。
順序存儲結構的缺點:
- 存儲空間分配不靈活。
- 運算的空間復雜度高。
改進方案是利用鏈式存儲結構表示多項式的有序序列。加粗樣式
2.3 線性表的順序表示和實現
2.3.1 線性表的順序存儲表示
線性表的順序表示指的是用一組地址連續的存儲單元依次存儲線性表的數據元素,這種表示也稱作線性表的順序存儲結構或順序映像。
通常,稱這種存儲結構的線性表為順序表(Sequential List)
順序表的特點:
- 邏輯上相鄰的數據元素,物理次序也是相鄰的。
- 依次存儲,地址連續,中間沒有空出存儲單元。
- 以物理位置相鄰表示邏輯關系。
- 任一元素均可隨機存取。知道某個元素的存儲位置可以計算出其他元素的存儲位置。
假設線性表的每個元素需占用l個存儲單元,所占的第一個單元的存儲地址作為數據元素的存儲起始位置。
…持續修改完善中
總結
- 上一篇: 第2章 Python与数据分析
- 下一篇: 第3章 数据和C