實驗專案:線性表的鍊錶實現:遍歷、插入、刪除、翻轉
實驗型別: 基礎性
用鍊錶儲存線性表,實現線性表的基本操作。
涉及的知識點:
1.單鏈表的基本操作實踐。實現單鏈表的建立(頭插、尾插)、銷毀、判空、輸出、查詢、插入、刪除等功能,每個功能用乙個函式實現。
(1)建立10個元素的鍊錶list:,實現單鏈表的建立的基本操作。
(2)刪除鍊錶list:的元素第乙個值為2的元素,再在5號位置插入元素2,實現單鏈表的刪除、插入的基本操作。
(3)對(2)步結果的單鏈表list:的結點進行排序操作,得單鏈表list:。
2. 基本演算法實踐。某非空帶頭結點單鏈表l中的元素為整數,實現將所有小於零的結點移到所有大於等於零的結點前面。例如l= ,輸出新l的結果=
一、建立陣列,並將題目中的資料輸入,再將陣列轉化為鍊錶進行後續操作
二、將大於零的結點通過尾結點放到鍊錶的後面,再將小於零的結點通過頭結點放到鍊錶的前面
#include
#include
typedef
int elemtype;
typedef
struct lnode
linknode;
//宣告單鏈表結點型別
//尾插
void
createlist1
(linknode *
&l,elemtype a,
int n)
//建立鍊錶,並將陣列元素輸入
r->next=
null;}
//頭插法
void
createlistf
(linknode *
&l,elemtype a,
int n)
}void
destroylist
(linknode *
&l)//銷毀線性表
free
(pre);}
bool listempty
(linknode *
&l)//判斷線性表是否為空
void
displist
(linknode *l)
//輸出鍊錶
printf
("\n");
}int
locateelem
(linknode *l,elemtype e)
//按元素查詢
if(p==
null
)return(0
);else
}bool listinsert
(linknode *
&l,int i,elemtype e)
//插入資料元素
if(p==
null
)return false;
else
}bool listdalete
(linknode *
&l,int i,elemtype &e)
//刪除資料元素
if(p==
null
)return false;
else
}void
sortlist
(linknode *
&l);
//宣告函式
void
separation
(linknode *l)
;//宣告函式
intmain()
;//第一題第一問
createlist1
(l,a,10)
;displist
(l);
int b[10]
=,i,e;
createlist1
(l,b,10)
;//第一題第二問刪除第乙個元素為二
locateelem
(l,2);
listdalete
(l,i,e)
;displist
(l);
listinsert
(l,5,2
);displist
(l);
sortlist
(l);
//第一題第三問
displist
(l);
printf
("實驗二:\n");
int n;
linknode *l2;
printf
("請規定單鏈表的長度:");
scanf
("%d"
,&n)
;int c[n]
;for
(int i=
0;i)createlist1
(l,c,n)
;separation
(l);
displist
(l);
}void
sortlist
(linknode *
&l)//插入排序}}
printf
("排序之後\n");
歡迎大佬指正
資料結構實驗二 線性表
一 實驗目的 鞏固線性表的資料結構,學會線性表的應用。1.回顧線性表的邏輯結構,線性表的物理儲存結構和常見操作。2.學習運用線性表的知識來解決實際問題。3.進一步鞏固程式除錯方法。4.進一步鞏固模板程式設計。二 實驗內容 1.建立乙個n個學生成績的順序表,對錶進行插入 刪除 查詢等操作。分別輸出結果...
《資料結構》實驗二 線性表實驗
一 實驗目的 鞏固線性表的資料結構,學會線性表的應用。1.回顧線性表的邏輯結構,線性表的物理儲存結構和常見操作。2.學習運用線性表的知識來解決實際問題。3.進一步鞏固程式除錯方法。4.進一步鞏固模板程式設計。二 實驗時間 準備時間為第2周到第4周,具體集中實驗時間為第4週第2次課。2個學時。三 實驗...
《資料結構》實驗二 線性表實驗
資料結構 實驗二 線性表實驗 一 實驗目的 鞏固線性表的資料結構,學會線性表的應用。1.回顧線性表的邏輯結構,線性表的物理儲存結構和常見操作。2.學習運用線性表的知識來解決實際問題。3.進一步鞏固程式除錯方法。4.進一步鞏固模板程式設計。二 實驗內容 1.建立乙個 n個學生成績的順序表,對錶進行插入...