全文預(yù)覽已結(jié)束
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1. #include2. #include/*malloc()等*/3. #include/*EOF(=Z或F6),NULL*/4. #include/*atoi()*/#include/*floor(),ceil(),abs()*/5. 6. #defineTRUE17. #defineFALSE08. #defineOK19. #defineERROR010. #defineINFEASIBLE-111. #defineLIST_INIT_SIZE10/*線性表存儲空間的初始分配量*/12. #defineLISTINCREMENT2/*線性表存儲空間的分配增量*/13. typedefintElemType;14. typedefintStatus;15. typedefintBoolean;16. typedefstruct17. 18. ElemType*elem;/*存儲空間基址*/19. intlength;/*當(dāng)前長度*/20. intlistsize;/*當(dāng)前分配的存儲容量(以sizeof(ElemType)為單位)*/21. SqList;22. 23. StatusInitList(SqList*L)/*算法2.3*/24. 25. /*操作結(jié)果:構(gòu)造一個空的順序線性表*/26. (*L).elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType);27. if(!(*L).elem)28. exit(OVERFLOW);/*存儲分配失敗*/29. (*L).length=0;/*空表長度為0*/30. (*L).listsize=LIST_INIT_SIZE;/*初始存儲容量*/31. returnOK;32. 33. 34. StatusListInsert(SqList*L,inti,ElemTypee)/*算法2.4*/35. 36. /*初始條件:順序線性表L已存在,1iListLength(L)+1*/37. /*操作結(jié)果:在L中第i個位置之前插入新的數(shù)據(jù)元素e,L的長度加1*/38. ElemType*newbase,*q,*p;39. if(i(*L).length+1)/*i值不合法*/40. returnERROR;41. if(*L).length=(*L).listsize)/*當(dāng)前存儲空間已滿,增加分配*/42. 43. newbase=(ElemType*)realloc(*L).elem,(*L).listsize+LISTINCREMENT)*sizeof(ElemType);44. if(!newbase)45. exit(OVERFLOW);/*存儲分配失敗*/46. (*L).elem=newbase;/*新基址*/47. (*L).listsize+=LISTINCREMENT;/*增加存儲容量*/48. 49. q=(*L).elem+i-1;/*q為插入位置*/50. for(p=(*L).elem+(*L).length-1;p=q;-p)/*插入位置及之后的元素右移*/51. *(p+1)=*p;52. *q=e;/*插入e*/53. +(*L).length;/*表長增1*/54. returnOK;55. 56. 57. StatusListTraverse(SqListL,void(*vi)(ElemType*)58. 59. /*初始條件:順序線性表L已存在*/60. /*操作結(jié)果:依次對L的每個數(shù)據(jù)元素調(diào)用函數(shù)vi()。一旦vi()失敗,則操作失敗*/61. /*vi()的形參加&,表明可通過調(diào)用vi()改變元素的值*/62. ElemType*p;63. inti;64. p=L.elem;65. for(i=1;i=L.length;i+)66. 67. if(i!=1)68. printf();69. vi(p+);70. 71. printf(n);72. returnOK;73. 74. 75. intListLength(SqListL)76. 77. /*初始條件:順序線性表L已存在。操作結(jié)果:返回L中數(shù)據(jù)元素個數(shù)*/78. returnL.length;79. 80. 81. StatusGetElem(SqListL,inti,ElemType*e)82. 83. /*初始條件:順序線性表L已存在,1iListLength(L)*/84. /*操作結(jié)果:用e返回L中第i個數(shù)據(jù)元素的值*/85. if(iL.length)86. exit(ERROR);87. *e=*(L.elem+i-1);88. returnOK;89. 90. 91. voidprint(ElemType*c)92. 93. printf(%d,*c);94. 95. 96. voidMergeList(SqListLa,SqListLb,SqList*Lc)/*算法2.2*/97. 98. /*已知線性表La和Lb中的數(shù)據(jù)元素按值非遞減排列。*/99. /*歸并La和Lb得到新的線性表Lc,Lc的數(shù)據(jù)元素也按值非遞減排列*/100. inti=1,j=1,k=0;101. intLa_len,Lb_len;102. ElemTypeai,bj;103. InitList(Lc);/*創(chuàng)建空表Lc*/104. La_len=ListLength(La);105. Lb_len=ListLength(Lb);106. while(i=La_len&j=Lb_len)/*表La和表Lb均非空*/107. 108. GetElem(La,i,&ai);109. GetElem(Lb,j,&bj);110. if(ai=bj)111. 112. ListInsert(Lc,+k,ai);113. +i;114. 115. else116. 117. ListInsert(Lc,+k,bj);118. +j;119. 120. 121. while(i=La_len)/*表La非空且表Lb空*/122. 123. GetElem(La,i+,&ai);124. ListInsert(Lc,+k,ai);125. 126. while(j=Lb_len)/*表Lb非空且表La空*/127. 128. GetElem(Lb,j+,&bj);129. ListInsert(Lc,+k,bj);130. 131. 132. 133. intmain()134. 135. intn,m,a105,b105,j;136. while(scanf(%d,&n)137. 138. intj;139. for(j=0;jn;j+)140. scanf(%d,&aj);141. scanf(%d,&m);142. for(j=0;jm;j+)143. scanf(%d,&bj);144. SqListLa,Lb,Lc;145. InitList(&La);/*創(chuàng)建空表La*/146. for(j=1;j=n;j+)/*在表La中插入n個元素*/147. ListInsert(&La,j,aj-1);148. InitList(&Lb);/*創(chuàng)建空表Lb
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年烏海市事業(yè)單位第一批人才引進(jìn)127人備考題庫(蘭州專場)及參考答案詳解
- 浙商銀行麗水分行2025年社會招聘備考題庫有答案詳解
- 2025年天津中醫(yī)藥大學(xué)第一附屬醫(yī)院招聘備考題庫及1套完整答案詳解
- 2025年湖南路橋建設(shè)集團(tuán)有限責(zé)任公司公路工程設(shè)計分公司負(fù)責(zé)人招聘備考題庫及1套參考答案詳解
- 2025年馬鞍山市住房公積金管理中心編外聘用人員招聘備考題庫及完整答案詳解一套
- 2025年年領(lǐng)軍人才招聘5人備考題庫及1套完整答案詳解
- 2025年華坪縣擇優(yōu)招聘云南省職業(yè)教育省級公費師范畢業(yè)生備考題庫及一套參考答案詳解
- 2025年貴州民用航空職業(yè)學(xué)院面向社會公開招聘專業(yè)群負(fù)責(zé)人6人備考題庫帶答案詳解
- 2025年佛山市順德陳村鎮(zhèn)南涌小學(xué)招聘臨聘教師備考題庫帶答案詳解
- 2025年海晏縣文化館招聘備考題庫及1套參考答案詳解
- DB34∕T 4007-2021 特種設(shè)備作業(yè)人員職業(yè)技能培訓(xùn)機(jī)構(gòu)基本條件
- 統(tǒng)編版語文七年級上冊第21課《小圣施威降大圣》教學(xué)課件
- 2024年中國人民銀行直屬事業(yè)單位招聘筆試真題
- (2025)公開選拔科級領(lǐng)導(dǎo)干部考試筆試試題和答案
- 四川省成都市青羊?qū)嶒炛袑W(xué)2024-2025學(xué)年上學(xué)期八年級英語試卷(含答案)
- 2025年中國藥典凡例試題及答案
- 2025年米糠油行業(yè)分析報告及未來發(fā)展趨勢預(yù)測
- 幼兒園繪本故事《安徒生童話故事拇指姑娘》課件
- 預(yù)付款協(xié)議書
- 2025有關(guān)房屋買賣合同書
- 諾如病毒知識培訓(xùn)課件
評論
0/150
提交評論