




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優質文檔-傾情為你奉上#include#includetypedefintelemType;/*/*以下是關于隊列順序存儲操作的6種算法*/*/structqueueelemType*queue;/*指向存儲隊列的數組空間*/intfront,rear,len;/*隊首指針(下標),隊尾指針(下標),隊列長度變量*/intmaxSize;/*queue數組長度*/;voidagainMalloc(structqueue*q)/*空間擴展為原來的2倍,原內容被自動拷貝到p所指向的存儲空間中*/elemType*p;p=realloc(q-queue,2*q-maxSize*sizeof(el
2、emType);/*動態存儲空間分配,若失敗則退出運行*/if(!p)printf(空間分配失敗! );exit(1);q-queue=p;/*使queue指向新的隊列空間*/*把原隊列的尾部內容后移maxSize個位置*/if(q-rear!=q-maxSize-1)inti;for(i=0;irear;i+)q-queuei+q-maxSize=q-queuei;q-rear+=q-maxSize;/*隊尾指針后移maxSize個位置*/q-maxSize=2*q-maxSize;/*把隊列空間大小修改為新的長度*/return;/*1.初始化隊列*/voidinitQueue(struc
3、tqueue*q,intms)/*檢查ms是否有效,若無效則退出運行*/if(msmaxSize=ms;/*置隊列空間大小為ms*/*動態存儲空間分配,若失敗則退出運行*/q-queue=malloc(ms*sizeof(elemType);if(!q-queue)printf(內存空間分配失敗! );exit(1);q-front=q-rear=0;/*初始置隊列為空*/return;/*2.向隊列中插入元素x*/voidenQueue(structqueue*q,elemTypex)/*當隊列滿時進行動態生分配*/if(q-rear+1)%q-maxSize=q-front)againMa
4、lloc(q);q-rear=(q-rear+1)%q-maxSize;/*求出隊尾的下一個位置*/q-queueq-rear=x;/*把x的值賦給新的隊尾*/return;/*3.從隊列中刪除元素并返回*/elemTypeoutQueue(structqueue*q)/*若隊列為空則終止運行*/if(q-front=q-rear)printf(隊列為空,無法刪除! );exit(1);q-front=(q-front+1)%q-maxSize;/*使隊首指針指向下一個位置*/returnq-queueq-front;/*返回隊首元素*/*4.讀取隊首元素,不改變隊列狀態*/elemTypep
5、eekQueue(structqueue*q)/*若隊列為空則終止運行*/if(q-front=q-rear)printf(隊列為空,無法刪除! );exit(1);returnq-queue(q-front+1)%q-maxSize;/*隊首元素是隊首指針的下一個位置中的元素*/*5.檢查一個隊列是否為空,若是則返回1,否則返回0*/intemptyQueue(structqueue*q)if(q-front=q-rear)return1;elsereturn0;/*6.清除一個隊列,并釋放動態存儲空間*/voidclearQueue(structqueue*q)if(q-queue!=NU
6、LL)free(q-queue);q-queue=NULL;/*設置隊列空間指針為空*/q-front=q-rear=0;/*設置隊列為空*/q-maxSize=0;/*設置隊列大小為0*/return;/*/intmain(intargc,char*argv)structqueueq;inta8=3,8,5,17,9,30,15,22;inti;initQueue(&q,5);for(i=0;i8;i+)enQueue(&q,ai);printf(%d,outQueue(&q);printf(%d ,outQueue(&q);enQueue(&q,68);printf(%d,peekQueue(&q);printf(%d ,outQueue(&q);whi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鐵嶺市昌圖縣2025年四年級數學第二學期期末聯考模擬試題含解析
- 浙江省金華第一中學2025屆高三下學期3月初態測試英語試題含解析
- 山東省寧陽十一中2025年初三下學期摸底(期末)考試物理試題含解析
- 山東省聊城市莘縣第一中學2024-2025學年高三5月學生學業能力調研考試歷史試題含解析
- 交換房地產股權合同范本
- 江西省臨川一中2024-2025學年初三一輪復習基礎知識檢測試題數學試題含解析
- 山西省忻州市現代雙語學校2025年數學五年級第二學期期末學業水平測試模擬試題含答案
- 上海市民辦和衷中學2025年初三第二學期期末聯考英語試題試卷含答案
- 山東省青島市黃島區2025屆高三下學期期中(文理)物理試題含解析
- 舊機動車交易合同格式
- 2025年全國國家版圖知識競賽(中小學組)題庫及答案
- 級班組安全教育培訓
- 汽車租賃行業自駕租車免責聲明書
- 激光切割機項目可行性分析報告(模板參考范文)
- 基于PLC的自動生產線控制系統的設計畢業論文
- 劍橋國際少兒英語一級unit-7-Wild-Animal
- 第六講探尋新時期中美正確相處之道-2025年春季學期形勢與政策課件
- 新時代青年傳承和弘揚傳統文化研究
- 齒輪的世界:2025年《齒輪傳動》精講課件
- 2024-2030年中國天然滋補品行業市場深度分析及投資戰略規劃建議報告
- 2025年中國鹽業股份有限公司招聘筆試參考題庫含答案解析
評論
0/150
提交評論