資料結構筆記 線性表

2021-10-19 13:59:13 字數 1397 閱讀 1821

線性表篇

線性表有兩種物理儲存結構:順序儲存結構鏈式儲存結構

線性表的順序訪問結構是最簡單以及最常用的線性表的儲存方式

我們用一段位址連續的儲存單元依次儲存線性表中的資料元素,其實就是和陣列一樣

通過佔位的方式將一定空間占有,再把相同資料元素型別的資料元素依次放到空間裡

描述順序表的屬性

1.儲存空間的起始位置            也就是陣列data

2.順序表的容量(最大長度)maxsize

3.順序表的當前長度length這個是當前長度,會隨著你所做的變化而變化,與maxsize不同

線性表的順序儲存結構:在機內物理上的緊鄰來表示線性表中資料元素的緊鄰邏輯結構

也就是順序表中相鄰的兩個元素其儲存位置也是相鄰的

所以只要確定好起始位置,線性表的任一元素都可隨機訪問

計算順序表第i個元素的儲存位置與a1的關係

loc(ai)=loc(a1) + (i -1)×c

下面,我們用c++的模板類來定義順序表

const int maxsize = 100; //maxsize = 100自己定義的,依實際情況而定

template //定義模板類

class seqlist ;

在模板類下的操作說明:

1.如果表空,則丟擲下溢異常; length==0

2.如果元素的刪除位置不合理,則丟擲位置異常; i<1||i>length

3.將第i個元素賦給x;

4.將第計1個元素到最後乙個元素分別向前移動乙個位置;

5. 表長減1;

6.返回元素x

*/

templatet seqlist::delete(int i)

資料結構筆記 線性表

思考 怎麼程式設計解決多項式相加問題?1.線性表概念 由同型別資料元素構成的有序序列的線性結構 1.表中元素個數稱為線性表的長度 2.線性表中沒有元素時稱為空表 3.表的起始位置稱為表頭,結束位置稱為表尾。2.線性表的adt描述 3.線性表的順序儲存實現 未測試 include using name...

資料結構筆記 線性表

資料元素的資料型別。struct seqlist seqlist sl create int maxlen void sl free seqlist slist 釋放 刪除 順序表。與sqlst create 配對。void sl makeempty seqlist slist 置為空表。intsl...

資料結構 筆記 線性表

定義 由同型別資料元素構成有序序列的線性結構 型別名稱 list 物件集 n n 0 個元素構成的有序序列 操作集 list makeempty 初始化乙個空線性表l elementtype findkth int k,list l 根據位序k,返回相應元素 int find elementtype...