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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)迷宮問題-預(yù)覽頁

2025-02-11 05:58 上一頁面

下一頁面
 

【正文】 迷宮中隊(duì)列入隊(duì)操作void enqueue(struct point p){將p放入隊(duì)尾,tail++}②迷宮中隊(duì)列出隊(duì)操作struct point dequeue(struct point p){head++,返回que[head1]}③判斷隊(duì)列是否為空int is_empty(){返回head==tail的值,當(dāng)隊(duì)列為空時(shí),返回0}④訪問迷宮矩陣中節(jié)點(diǎn)void visit(int row,int col,int maze[41][41]){建立新的隊(duì)列節(jié)點(diǎn)visit_point,將其值分別賦為row,col,head1,maze[row][col]=2,表示該節(jié)點(diǎn)以被訪問過。判斷隊(duì)列是否為空,當(dāng)隊(duì)列不為空時(shí),則運(yùn)行以下操作:{ 調(diào)用dequeue()函數(shù),將隊(duì)頭元素返回給p,====n1,即到達(dá)出口節(jié)點(diǎn),即找到了路徑,結(jié)束;+1n且maze[][+1]==0,說明未到迷宮右邊界,且其右方有通路,則visit(,+1,maze),將右邊節(jié)點(diǎn)入隊(duì)標(biāo)記已訪問;+1m且maze[+1][]==0,說明未到迷宮下邊界,且其下方有通路,則visit(+1,maze),將下方節(jié)點(diǎn)入隊(duì)標(biāo)記已訪問;0且maze[][]==0,說明未到迷宮左邊界,且其左方有通路,則visit(,maze),將左方節(jié)點(diǎn)入隊(duì)標(biāo)記已訪問;0且maze[][]==0,說明未到迷宮上邊界,且其上方有通路,則visit(,+1,maze),將上方節(jié)點(diǎn)入隊(duì)標(biāo)記已訪問。}最后將路徑圖形打印出來。 print_maze(m,n)。 print_maze(m,n)。 case 4:cycle=(1)。 測試結(jié)果 迷宮系統(tǒng)主界面2. 手動(dòng)生成迷宮 手動(dòng)生成迷宮無解情況 手動(dòng)生成迷宮界面用戶自定義迷宮的行數(shù)、列數(shù)、迷宮障礙矩陣,由系統(tǒng)生成對(duì)應(yīng)的迷宮并求出無解。 printf(\n\n)。i++) for(j=0。}3. 自動(dòng)生成迷宮 自動(dòng)生成迷宮界面用戶自定義迷宮的行數(shù)和列數(shù),由系統(tǒng)自動(dòng)生成迷宮圖并求出上例迷宮無解。 printf(\n迷宮生成中……\n\n)。i++) for(j=0。i3。 maze[m1i][n1j]=0。其人物行走方向以左為例: if(iMap[iRow][iCol 1] == 0)//可以行走{ MoveCursorTo(iCol * 2,iRow)。 printf(♀)。system(pause)。\n\t歡迎下次再來O(∩_∩)O~~\n\n)。printf(\nPress Enter To Contiue!\n)。)。經(jīng)過我們幾次的討論和商討,最終決定選擇這個(gè)符合我們小組成員實(shí)際能力的選題——迷宮。我們不斷改進(jìn)和完善代碼中繁瑣和冗余的部分,力圖寫出一個(gè)最簡潔明了又不脫離實(shí)際的程序,盡可能做到和現(xiàn)實(shí)相貼近。 在這次團(tuán)隊(duì)合作中,我們都深深體會(huì)到學(xué)好專業(yè)知識(shí)的重要性,老師上課所教授的基本知識(shí)是非常必要的,在真正應(yīng)用到實(shí)際選題的時(shí)候就凸顯了出來,就以我們小組的選題為例,迷宮問題的基本思想就是棧的問題,如果對(duì)棧的知識(shí)比較了解,在實(shí)現(xiàn)迷宮問題時(shí)是不會(huì)太吃力的。所以說,通過這次實(shí)驗(yàn),也使我們小組成員之間的關(guān)系更加和諧和親密。}queue[512]。 printf(請(qǐng)按行輸入迷宮,0表示通路,1表示障礙(用空格隔開):\n\n)。jn。 printf(\n迷宮生成中……\n\n)。i++) for(j=0。i3。 maze[m1i][n1j]=0。 printf(迷宮入口\n)。i++) { printf(\n)。//通 if(maze[i][j]==1) printf(■)。 for(i=0。jn。//路徑 } }}void enqueue(struct point p)//增加{ queue[tail]=p。}int is_empty()//空對(duì){ return head==tail。}int mgpath(int maze[41][41],int m,int n)//路徑探索{ X=1。X=0。 while(!is_empty()) { p=dequeue()。 if((+1n)amp。amp。(maze[][]==0)) visit(,maze)。//上 } if(==m1amp。 printf((%d,%d)\n,)。 maze[][]=3。} return 0。}void youxi(){ double t,jl=10。 nI 10。 } else { printf( )。 printf(\n紀(jì)錄%.5f\n,jl)。 time (amp。//表示程序繼續(xù)運(yùn)行 while(bRun) { iInput = _getch()。 switch(iInput) { case 75://左 { if(iMap[iRow][iCol 1] == 0)//可以行走 { MoveCursorTo(iCol * 2,iRow)。 printf(♀)。//當(dāng)前位置移動(dòng)方向 iRow = 1。 case 77://右 { if(iCol + 1 = 20)//到達(dá)終點(diǎn) { MoveCursorTo(0,16)。 t=difftime(en,st)。 else if(tjl) { printf( ~\(≧▽≦)/~ 好棒,紀(jì)錄刷新?。?!\n\n)。 } if(iMap[iRow][iCol + 1] == 0)//可以行走 { MoveCursorTo(iCol * 2,iRow)。 printf(♀)。 //當(dāng)前位置移動(dòng)方向 iRow += 1。 } } } system(cls)。 while(cycle!=(1)) { printf(***********************************************************\n)。 printf( ☆ 手動(dòng)生成迷宮 請(qǐng)按:1\n\n)。 printf( ☆ ~~特別鳴謝~~ 請(qǐng)按:0\n\n)。 scanf(%d,amp。 scanf(%d,amp。 scanf(%d,amp。 scanf(%d,amp。 scanf(%d,amp。//調(diào)用輸出 mgpath(maze,m,n)。 while(getchar()!=39。 break。m)。n)。m)。n)。 print_maze(m,n)。 t=difftime(end,start)。//輸入回車?yán)^續(xù) getchar()。 system(cls)。 printf(\n\n)。\n\t歡迎下次再來O(∩_∩)O~~\n\n)。 printf(\nPress Enter To Contiue!\n)。)。 system(paus
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1