數(shù)據(jù)結(jié)構(gòu)習(xí)題集(李冬梅 第2版)C語言版源程序-算法2-9_第1頁
數(shù)據(jù)結(jié)構(gòu)習(xí)題集(李冬梅 第2版)C語言版源程序-算法2-9_第2頁
數(shù)據(jù)結(jié)構(gòu)習(xí)題集(李冬梅 第2版)C語言版源程序-算法2-9_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、ttinclude 件include using namespace std;函數(shù)結(jié)果狀態(tài)代碼define OK 14define ERROR 0 /define OVERFLOW -2/Status是函數(shù)的返回值類型,其值是函數(shù)結(jié)果狀態(tài)代碼typedef int Status;typedef struct DuLNode(int data;struct DuLNode *next;struct DuLNode *prior;DuLNode, *DuLinkList;的指針類型Status InitList(DuLinkList &L);Status DestroyList(DuLinkLis

2、t &L);void CreateList_R(DuLinkList iL,int L_Data,int n);void Exchange(DuLinkList p);void PrintList(DuLinkList L);結(jié)點的數(shù)據(jù)域指向直接前驅(qū)指向直接后繼/DuLinkList 為指向結(jié)構(gòu)體 DuLNode初始化銷毀鏈表后插法創(chuàng)立循環(huán)雙鏈表/交換前后結(jié)點輸出鏈表int main() (int l_Data=lz2z3;DuLinkList 1;InitList(1);CreateList_R(l,l_Dataz sizeof(l_Data)/sizeof(l_Data0);cout ”雙

3、向鏈表為: PrintList(1);DuLNode *p = l-next-next;cout p 指向的是:data endl;Exchange(p);cout 交換后的雙向鏈表為:;PrintList(1);DestroyList(1);return 0;初始化Status InitList(DuLinkList &L) /構(gòu)造一個空的單鏈表LL=new DuLNode;L-prior=L;L-nextL;return OK;生成新結(jié)點作為頭結(jié)點,用頭指針L指向頭結(jié)點頭結(jié)點的前驅(qū)指針指向自身頭結(jié)點的后繼指針指向自身銷毀鏈表Status DestroyList(DuLinkList &L)

4、DuLNode *p = L while(p != L)釋放空間釋放空間DuLNode *q=p; p=p-next; delete q;return OK; 后插法創(chuàng)立循環(huán)雙鏈表尾指針r指向頭結(jié)點void CreateList_R(DuLinkList &L,int L_Data(, int n) /正位序輸入n個元素的值,建立帶表頭結(jié)點的猛環(huán)雙鏈表LDuLNode *r = L;for (int i=0;idata=L_Datai; p-next=L; r-next=p; p-prior=r;L-prior=p; rp;DuLNode *p=new DuLNode; p-data=L_Da

5、tai; p-next=L; r-next=p; p-prior=r;L-prior=p; rp;生成新結(jié)點/初始化p的數(shù)據(jù)域為L_Datai將新結(jié)點*插入尾結(jié)點”之后 r指向新的尾結(jié)點*p輸出鞋表 void PrintList(DuLinkList L) (DuLNode *p=L; coutNone;p=p-next;while(p!=L)cout data; p=p-next;coutendl;交換void Exchange(DuLinkList p)對應(yīng)圖2.20 /對應(yīng)圖2.20 對應(yīng)圖2.20 對應(yīng)圖2.20 對應(yīng)圖2.20 對應(yīng)圖2.20 /對應(yīng)圖2.20對應(yīng)圖2.20 /對應(yīng)圖2.20 對應(yīng)圖2.20 對應(yīng)圖2.20 對應(yīng)圖2.20 對應(yīng)圖2.20 /對應(yīng)圖2.20/在雙向循環(huán)鏈表,交換p所指向的結(jié)點及其前驅(qū)結(jié)點的順序DuLNode *q=p-prior; q-prior-next=p; p-prior=q-prior; q-next=p-nex

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論