《資料結構》實驗二 線性表的實驗

2021-06-26 10:26:35 字數 2014 閱讀 4520

一..實驗目的

鞏固線性表的資料結構,學會線性表的應用。

1.回顧線性表的邏輯結構,線性表的物理儲存結構和常見操作。

2.學習運用線性表的知識來解決實際問題。

3.進一步鞏固程式除錯方法。

4.進一步鞏固模板程式設計。

二、實驗內容

建立乙個n個學生成績的順序表,對錶進行插入、刪除、查詢等操作。分別輸出結果。

要求如下:

1)用順序表來實現。

2)用單鏈表來實現。

用順序表儲存學生成績

標頭檔案 seqlist.h

const int maxsize=30;

templateclass seqlist

seqlist(t a,int n);

~seqlist(){}

int length() //求線性表的長度

t get(int i); //按位查詢,查詢第i個元素

int locate(t x); //按值查詢,查詢值為x的元素序號

void insert(int i,t x); //在第i個位置插入值為x的元素

t delete(int i); //刪除第i個元素

void printlist(); //遍歷操作,按序號一次輸出元素

private:

t data[maxsize]; //存放資料元素的陣列

int length;

};

seqlist.cpp

#include"seqlist.h"

#includetemplateseqlist::seqlist(t a,int n)

templatet seqlist::delete(int i) //刪除

templateint seqlist::locate(t x) //按值查詢

; seqlistscorelist(score,5);

cout<<"原始資料為:";

scorelist.printlist();

cout<

用單鏈表儲存學生成績

#includeusing namespace std;

templatestruct node

;templateclass linklist

;templatelinklist::linklist()

templatelinklist::linklist(datatype a,int n)

r->next=null;

}templatelinklist::~linklist()

}templatevoid linklist::insert(int i,datatype x)

if(p==null)throw"位置";

else }

templatedatatype linklist::delete(int i)

if(p==null||p->next==null)

throw"位置";

else }

templateint linklist::locate(datatype x)

return 0;

}templatevoid linklist< datatype>::printlist()

coutcout<<"鍊錶資料為:"<

順序表和單鏈表的儲存結構的比較:

順序表是在邏輯和物理儲存位置上相鄰,用陣列儲存資料,順序表的空間長度預先分配;

單鏈表的邏輯次序和物理次序不一定相同,元素之間的邏輯關係用指標表示。單鏈表的儲存空間是動態儲存的。

順序表的方法比較簡單,容易實現,但是進行插入,刪除等操作時不方便,所佔記憶體較大;

而單鏈表插入和刪除方便,但是儲存密度較低,不能隨機訪問。

《資料結構》實驗二 線性表實驗

一 實驗目的 鞏固線性表的資料結構,學會線性表的應用。1.回顧線性表的邏輯結構,線性表的物理儲存結構和常見操作。2.學習運用線性表的知識來解決實際問題。3.進一步鞏固程式除錯方法。4.進一步鞏固模板程式設計。二 實驗時間 準備時間為第2周到第4周,具體集中實驗時間為第4週第2次課。2個學時。三 實驗...

《資料結構》實驗二 線性表實驗

資料結構 實驗二 線性表實驗 一 實驗目的 鞏固線性表的資料結構,學會線性表的應用。1.回顧線性表的邏輯結構,線性表的物理儲存結構和常見操作。2.學習運用線性表的知識來解決實際問題。3.進一步鞏固程式除錯方法。4.進一步鞏固模板程式設計。二 實驗內容 1.建立乙個 n個學生成績的順序表,對錶進行插入...

《資料結構》實驗二 線性表實驗

資料結構 實驗二 線性表實驗 一 實驗目的 鞏固線性表的資料結構,學會線性表的應用。1.回顧線性表的邏輯結構,線性表的物理儲存結構和常見操作。2.學習運用線性表的知識來解決實際問題。3.進一步鞏固程式除錯方法。4.進一步鞏固模板程式設計。二 實驗時間 準備時間為第2周到第4周,具體集中實驗時間為第4...