freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)隊列實驗報告-文庫吧資料

2024-10-21 10:40本頁面
  

【正文】 內(nèi)容用隊列求解迷宮問題 [問題描述] 以一個M*N的長方陣表示迷宮,0和1分別表示迷宮中的通路和墻壁。還有要注意的是在C語言中不能用動態(tài)分配的一維數(shù)組來實現(xiàn)循環(huán)隊列,如果用戶的應(yīng)用程序中設(shè)有循環(huán)隊列,則必須為它設(shè)定一個最大隊列長度;若用戶無法估計所用隊列的最大長度,則宜采用鏈?zhǔn)疥犃?。在隊列這種數(shù)據(jù)結(jié)構(gòu)中,最先插入的元素將是最先被刪除的元素;反之最后插入的元素將是最后被刪除的元素,因此隊列又稱為“先進先出” 的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。隊首元素1出隊.(4)選擇操作3,判斷對是否為空(5)選擇操作4,輸出對頭元素2.(6)選擇操作5,顯示隊列元素循環(huán)隊列(1)創(chuàng)建隊列,輸入數(shù)據(jù) 1,2,3,4,5.(2)選擇操作1,(3)選擇操作2,執(zhí)行出隊操作。(7)選擇操作6執(zhí)行輸出隊頭元素操作,回車,輸出元素2。(4)選擇操作3執(zhí)行元素出隊操作,回車,隊首元素1出隊。(3)根據(jù)提示,選擇操作2執(zhí)行元素入隊操作。,原本使用了大量的生僻的函數(shù)名,經(jīng)過改進,目前使用都是通俗易懂的函數(shù)名稱,方便用戶理解。,可以進行人機交互,在后來的程序中將會做些改進,以增強人機交互性。,根據(jù)順序循環(huán)隊列隊滿條件front==(rear+1)%MAXQSIZE來判斷隊列是否已滿。不變。,分析測試結(jié)果,以驗證所完成的系統(tǒng)是否達(dá)到預(yù)期效果。,原本使用了大量的生僻的函數(shù)名,經(jīng)過改進,目前使用都是通俗易懂的函數(shù)名稱,方便用戶理解。,可以進行人機交互,在后來的程序中將會做些改進,以增強人機交互性。鏈隊列,運行程序。,如有問題,參考用戶手冊。,先通過隊頭指針和隊尾指針是否相等判斷隊列是否已空,空時不能操作,這是要注意的。即先要判斷隊列是否已經(jīng)已滿,因為隊尾指針的最大值是MAXQSIZE,所以通過檢查隊尾指針rear是否等于MAXQSIZE來判斷隊列是否已滿。隊列是否為空的標(biāo)志就是隊頭指針和隊尾指針是否同時指向隊列中的同一個位置,即隊頭指針和隊尾指針是否相等。//***************************}//switch }//while }//main四.調(diào)試分析(xxx)順序隊列,運行程序。case 0:printf(“ 謝謝使用??!n”)。break。s3=1。display3(amp。break。s3=1。e3)。Gethead3(amp。break。}s3=1。if(QueueEmpty3(Q))printf(“此隊列為空!n”)。break。s3=1。display3(amp。Q,amp。} case 2:{ system(“cls”)。start3()。Q)。Q,x3)。x3)。printf(“請輸入入隊元素:n ”)。break。choice=1。s3)。start3()。Q)。printf(“隊尾為:%dn”,[+j31])。Q,a3)。a3)。i3{ printf(“請輸入第%d個數(shù)據(jù):”,i3)。j3)。printf(“請輸入數(shù)據(jù)個數(shù)j3=”)。Q)。//**************************************************case 3:{system(“cls”)。break。choice=1。break。s2=1。e2)。GetHead2(amp。break。choice=1。a2=0。q)。break。choice=1。a2=0。q)。break。a2=1。q)。q,e2)。case 3:system(“cls”)。start2()。q)。q,e2)。e2)。printf(“請輸入入隊元素:”)。break。a2=1。QueueLength2(amp。a2)。start2()。q,e2)。e2)。i2{printf(“請輸入第%d個元素:”,i2)。printf(“請輸入隊列的元素:n”)。scanf(“%d”,amp。printf(“創(chuàng)建隊列完成!n”)。InitQueue2(amp。}}//switch} //while}//case1break。start1()。display1(Q1)。break。s1=1。e1)。Gethead1(amp。break。}s1=1。if(QueueEmpty1(Q1))printf(“此隊列為空!n”)。break。s1=1。e1)。DeSqueue1(amp。break。s1=1。Q1,x1)。x1)。printf(“請輸入入隊元素:n ”)。break。choice=1。s1)。start1()。display1(Q1)。} printf(“對頭為:%dn”,[])。Ensqueue1(amp。scanf(“%d”,amp。for(i1=1。scanf(“%d”,amp。printf(“創(chuàng)建隊列完成!n”)。InitSqueue1(amp。choice)。Begin()。//******************************** Squeue3 Q。Squeue1 Q1。//鏈隊列定義的量int i3,a3,x3,s3,j3。int i1,a1,x1,s1,j1。} } void main(){int choice。tail=(tail+1)%MAXSIZE。if(qfront==qrear)printf(“此隊列為空!”)。tail=qfront。return 1。return 0。else return 0。return 1。} *e=qbase[qfront]。} 3)出隊的算法int DeSqueue3(Squeue3 *q,Datatype *e)/*出隊*/ { if(qfront==qrear){ printf(“隊列已空,無法出隊!”)。/*將接收到得值付給隊尾所指的節(jié)點*/ qrear=(qrear+1)% MAXSIZE。return 0。prear=0。} 1)隊列的初始化算法void InitSqueue3(Squeue3 *p)/*初始化隊列*/ { pbase=(Datatype *)malloc(sizeof(Datatype)* MAXSIZE)。*e=qfrontnextdata。free(temp)。} temp=qfront。temp=tempnext。} 7)隊列的清空的算法 void Clear2(LinkQueue *q)//清空隊列 { QueuePtr temp=qfrontnext。p=pnext。printf(“鏈隊列元素依次為:”)。} 6)隊列的輸出算法void output2(LinkQueue *q)//輸出隊列 { QueuePtr p。if(!qrear)free(qrear)。free(qfront)。} printf(“鏈隊列長度為:%dn”,i)。while(p){++i。int i=0。//刪除要出隊的結(jié)點return e。//要出隊的數(shù)據(jù)元素為e qfrontnext=pnext。//初始化temp為要出隊的結(jié)點指針if(qfrontnext==qrear)//要出隊的結(jié)點為最后一個結(jié)點qrear=qfront。if(qfront==qrear)//隊列為空return 0。qrear=p。//初始化新節(jié)點數(shù)據(jù)為e pnext=NULL。//創(chuàng)建新節(jié)點if(!p)//如果內(nèi)存分配成功exit(1)。} 2)元素的入隊算法void EnQueue2(LinkQueue *q, QElemType e)//將元素e進隊 { QueuePtr p。if(!qfront)exit(1)。if(==)printf(“此隊列為空!”)。return 1。return 0。else return 0。return 1。} *e=qdata[qfront]。} 4)元素的出隊int DeSqueue1(Squeue1 *q,Datatype *e)/*出隊*/ { if(qfront==qrear){ printf(“隊列已空,無法出隊!”)。} 3)元素的入隊int Ensqueue1(Squeue1 *q, Datatype e)/*入隊*/ { if((qrear+1)% MAXSIZE == qfront){ printf(“n隊列已滿n”)。2)空的隊列的構(gòu)造void InitSqueue(Squeue *p)/*初始化隊列*/ { pfront=0。intfront,rear。否則返回ERROR。Q,QElemTypeamp。Q,QElemType e)//插入e返回Q的新的隊尾元素。否則返回ERROR。Status GetHead(LinkQueueQ,QElemTypeamp。Status QueueEmpty(LinkQueueQ)//若Q為空隊列,則返回TRUE,否則FALSE。Status ClearQueue(LinkQueueamp。Status DestroyQueue(LinkQueueamp。Status InitQueue(LinkQueueam
點擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1