版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)三 線性表的鏈?zhǔn)酱鎯?chǔ)【實(shí)驗(yàn)?zāi)康摹?. 掌握基本線性鏈?zhǔn)酱鎯?chǔ)的類(lèi)型定義及C語(yǔ)言實(shí)現(xiàn);2. 掌握基本線性表在鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中的各種基本操作?!緦?shí)驗(yàn)要求】1. 學(xué)會(huì)定義一個(gè)鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)體 LNode;2. 學(xué)會(huì)鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的初始化、清空、求線性表的長(zhǎng)度、遍歷、改值、 插入(頭插、尾插、固定位置插入)、刪除(刪頭、刪尾、固定位置刪除) ;3. 學(xué)會(huì)用 main 函數(shù)調(diào)用定義的各個(gè)函數(shù);【實(shí)驗(yàn)環(huán)境】VC+運(yùn)行的環(huán)境【實(shí)驗(yàn)步驟及代碼 】一、創(chuàng)建VC工程環(huán)境二、編寫(xiě)、調(diào)試程序/一、包含庫(kù)文件和類(lèi)型定義#include #include typedef charElemType;/二、定義結(jié)構(gòu)typedef
2、 struct LNodeElemType data;struct LNode *next;LNode,* LinkList ;/三、基本操作函數(shù)的定義/(1)創(chuàng)建一個(gè)帶頭結(jié)點(diǎn)的鏈表LinkList CreateList_L(int n)逆序輸入如n個(gè)元素的值,建立一個(gè)帶表頭結(jié)點(diǎn)的單鏈表LinkList L=( LinkList )malloc(sizeof(LNode);L-next=NULL;char ch;for(int i=n;i0;-i)LinkList p=(LinkList )malloc(sizeof(LNode); scanf(%c,&ch); p-data=ch;p-nex
3、t=L-next; L-next=p;return L; /(2)鏈表的遍歷函數(shù) void travel_L( LinkList s)LinkList p=s-next;while(p) printf(%c,p-data); p=p-next;printf(n);返回鏈表L的第i個(gè)元素的值ElemType GetElem_L(LinkList L,int i)LNode *p=L-next;int j=1;while (p&jnext; +j;if (!p|ji) printf(i 越界! );exit(1);else return p-data;(4)鏈表的i個(gè)位置插入一個(gè)值為e的節(jié)點(diǎn)voi
4、d ListInsert_L(LinkList L,int i, ElemType e)LinkList p=L;int j=0;while (p&jnext; +j;if (!p|ji-1) exit(1);elseLNode *s=(LinkList )malloc(sizeof(LNode); s-data=e;s-next=p-next;p-next=s;return;/(5)鏈表中刪除第 i 個(gè)元素void ListDelete_L( LinkList L,int i)LNode *p=L;int j=0;while (p-next&jnext;+j;if(!(p-next)|ji-
5、1) exit(1);LNode *q=p-next;p-next=q-next;free(q);return;/(6)刪除鏈表的第一個(gè)節(jié)點(diǎn)void ListDeleteFist_L( LinkList L)ListDelete_L(L,1);/(7)求一個(gè)鏈表的長(zhǎng)度int ListLength_L( LinkList L)LNode *p=L;int j=0;while (p-next) p=p-next;+j;return j;(8)在一個(gè)鏈表的尾部查入一個(gè)值為e的節(jié)點(diǎn)void ListInsertLast_L( LinkList L,ElemType e) ListInsert_L(L,
6、ListLength_L(L)+1,e);/(9)刪除鏈表的尾節(jié)點(diǎn)void ListDeleteLast_L(LinkList L) ListDelete_L(L,ListLength_L(L);(10)把鏈表的第i個(gè)值改為evoid Listchange(LinkList L,int i, ElemType e)LNode *p=L;int j=0;while (p-next&jnext;+j;if(!(p-next)|ji) exit(1);p-data=e;return;(11)鏈表中找值為e的節(jié)點(diǎn)的位置int ListFind( LinkList L, ElemType e)LNode
7、 *p=L;int j=0;while (p-next&(p-data!=e) p=p-next;+j;if(!(p-next)|jListLength_L(L) exit(1);elsereturn j;/(12)清空一個(gè)鏈表void ListClear_L(LinkList L)while (L-next) ListDeleteLast_L(L);/四、主調(diào)函數(shù)void main()LinkList L=CreateList_L(6); travel_L(L);printf(鏈表的第2個(gè)元素是:); printf(%cn,GetElem_L(L,2);printf(鏈表的第2個(gè)位置插入值為
8、w后的鏈表:);ListInsert_L(L,2,w);travel_L(L);printf( 刪除鏈表的第 2個(gè)位置上的節(jié)點(diǎn)后的鏈表: ); ListDelete_L(L,2);travel_L(L);printf( 刪除鏈表的頭節(jié)點(diǎn)后的鏈表: );ListDeleteFist_L(L);travel_L(L);printf(n);printf( 當(dāng)前鏈表的長(zhǎng)度為: ); printf(%d,ListLength_L(L); printf(n);printf(鏈表的尾部插入z后:);ListInsertLast_L(L,z);travel_L(L);printf(n);printf( 刪除鏈
9、表的尾節(jié)點(diǎn)后: );ListDeleteLast_L(L);travel_L(L);printf(n);printf(把第二個(gè)節(jié)點(diǎn)的值改為丫后:);Listchange(L,2,Y);travel_L(L);printf(n);printf(找鏈表中值為丫的位置:); prin tf(%d丄 istFi nd(L,Y);printf(n);printf(清空鏈表:);ListClear_L(L);travel_L(L);printf(n);【實(shí)驗(yàn)結(jié)果】輸入abcdef六個(gè)元素時(shí)的運(yùn)行結(jié)果:CA *E:教學(xué)數(shù)據(jù)結(jié)構(gòu)3實(shí)鯊程序LinkListDe可Xabcdeffedcba勺寰2個(gè)元案是:e勺第2個(gè)位置插入值為討后的鏈表:fw
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 私人定制房產(chǎn)轉(zhuǎn)讓協(xié)議樣本
- 福利院護(hù)工招聘合同細(xì)則
- 酒店管理教師勞動(dòng)合同模板
- 高端商務(wù)樓租賃合同模板
- 風(fēng)力發(fā)電場(chǎng)并網(wǎng)配網(wǎng)工程施工合同
- 土石方填筑設(shè)計(jì)合同
- 停車(chē)場(chǎng)地平施工合同
- 零售業(yè)專(zhuān)用送貨員聘用合同
- 醫(yī)療美容機(jī)構(gòu)美發(fā)師聘用合同
- 親子活動(dòng)表演助理招聘協(xié)議
- 2025年1月浙江省高中學(xué)業(yè)水平考試政治試卷試題(含答案解析)
- 學(xué)校網(wǎng)絡(luò)合同范例
- 2022-2023學(xué)年上海市浦東區(qū)高二(上)期末語(yǔ)文試卷
- 工程建設(shè)安全專(zhuān)項(xiàng)整治三年行動(dòng)實(shí)施方案
- 2025年中國(guó)帽子行業(yè)發(fā)展現(xiàn)狀、進(jìn)出口貿(mào)易及市場(chǎng)規(guī)模預(yù)測(cè)報(bào)告
- 2025春夏運(yùn)動(dòng)戶外行業(yè)趨勢(shì)白皮書(shū)
- 2024年商會(huì)工作計(jì)劃|商會(huì)年度工作計(jì)劃總結(jié)例文
- 中醫(yī)筋傷的治療
- 【MOOC】英文技術(shù)寫(xiě)作-東南大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 第一單元第一節(jié)《兼收并蓄滴水成河-數(shù)據(jù)和數(shù)據(jù)的采集》說(shuō)課稿 2023-2024學(xué)年西交大版(2014)初中信息技術(shù)八年級(jí)上冊(cè)
- 輻射與防護(hù)學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
評(píng)論
0/150
提交評(píng)論