




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
姓名設(shè)計題目:迷宮問題的操作設(shè)計任務(wù)(重要技術(shù)參數(shù)):學(xué)會運(yùn)用數(shù)據(jù)構(gòu)造建立迷宮問題,編造出迷宮并設(shè)計出走出迷宮的措施硬件環(huán)境:處理器:英特爾第三代酷睿i3-3GHz內(nèi)存:4GB(三星DDR31333MHz)主硬盤:希捷ST500LM012HN-M500MBB(500GB/5400轉(zhuǎn)/分)顯示屏:三星SEC3649(14英寸)軟件環(huán)境:操作系統(tǒng):Windows864位(DirectX11)指導(dǎo)教師評語:1、課程設(shè)計目的構(gòu)造的應(yīng)用、算法的編寫、類C語言的算法轉(zhuǎn)換成C程序并用TC上機(jī)調(diào)試的基本據(jù)構(gòu)造中鏈表的創(chuàng)立、合并等措施以和怎樣通過轉(zhuǎn)化成C語言在微機(jī)上運(yùn)行實現(xiàn)等其他方面的能力。2.1問題描述:迷宮問題是取自心理學(xué)的一種古典試驗。在該試驗中,把一只老鼠從一種無頂大盒子的門放入,在盒子中設(shè)置了許多墻,對行進(jìn)方向形成了多處阻擋。盒子僅有一種出口,在出口處放置一塊奶酪,吸引老鼠在迷宮中尋找道路以抵達(dá)出口。對同一只老鼠反復(fù)進(jìn)行上述試驗,一直到老鼠從入口走到出口,而不走錯一步。老鼠通過多次試驗最終學(xué)會走通迷宮的路線。設(shè)計一種計算機(jī)程序?qū)θ我庠O(shè)定的矩形迷宮如下圖A所示,求出一條從入口到出口的通路,或得出沒有通路的結(jié)論。????????(3)用一種標(biāo)志(如數(shù)字8)在迷宮中標(biāo)出該條通路;3.課程設(shè)計總體方案和分析3.迷宮途徑的搜索:首先從迷宮的入口開始,假如該位置就是迷宮出口,則已經(jīng)找到了一條途徑,搜索工作結(jié)束。否則搜索其上、下、左、右位置與否是障礙,若不是障礙,就移動到該位置,然后再從該位置開始搜索通往出口的途徑;若是障礙就選擇另一種相鄰的位置,并從它開始搜索途徑。為防止搜索反復(fù)出現(xiàn),則將已搜索過的位置標(biāo)識為2,同步保留搜索痕跡,在考慮進(jìn)入下一種位置搜索之前,將目前位置保留在一種隊列中,假如所有相鄰的非障礙位置均被搜索過,且未找到通往出口的途徑,則表明不存在從入口到出口的途徑。這實現(xiàn)的是廣度優(yōu)先遍歷的算法,假如找到途徑,則為最短途徑。以矩陣00101為例,來示范一下首先,將位置(0,0)(序號0)放入隊列中,其前節(jié)點(diǎn)為空,從它開始搜索,其標(biāo)識變?yōu)?,由于其只有一種非障礙位置,因此接下來移動到(0,1)(序號1),其前節(jié)點(diǎn)序號為0,標(biāo)識變?yōu)?,然后從(0,1)移動到(1,1)(序號2),放入隊列中,其前節(jié)點(diǎn)序號為1,(1,1)存在(1,2)(序號3)、(2,1)(序號4)兩個可移動位置,其前節(jié)點(diǎn)序號均為2.對于每一種非障礙位置,它的相鄰非障礙節(jié)點(diǎn)均入隊列,且它們的前節(jié)點(diǎn)序號均為該位置的序號,因此假如存在途徑,則從出口處節(jié)點(diǎn)的位置,逆序就可以找到其從出口到入口的通路。如下表所示:由此可以看出,得到最短途徑:(3,4)(3,3)(2,3)(2,2)(1,2)(1,1)(0,1)(0,0)搜索算法流程圖如下所示:將(0,0)入隊列YNN是杏到達(dá)迷宮處Y右邊是否存在下邊是否存在是否存在是否存在N1.①構(gòu)建一種二維數(shù)組maze[M+2][N+2]用于存儲迷宮矩陣②自動或手動生成迷宮,即為二維數(shù)組maze[M+2][N+2]賦值③構(gòu)建一種隊列用于存儲迷宮途徑④建立迷宮節(jié)點(diǎn)structpoint,用于存儲迷宮中每個節(jié)點(diǎn)的訪問狀況⑤實現(xiàn)搜索算法⑥屏幕上顯示操作菜單2.迷宮的操作{定義ij為循環(huán)變量{定義ij為循環(huán)變量②迷宮中隊列出隊操作③判斷隊列與否為空{(diào)返回head==tail的值,當(dāng)隊列為空時,返回0}④訪問迷宮矩陣中節(jié)點(diǎn)voidvisitintrowintcolint⑤途徑求解voidmgpath(intmaze[intmintn為障礙,則此迷宮無解,返回0,程序結(jié)束。否則訪問入口節(jié)點(diǎn),將入口節(jié)點(diǎn)判斷隊列與否為空,當(dāng)隊列不為空時,則運(yùn)行如下操作:{調(diào)用dequeue()函數(shù),將隊頭元素返回給p,假如p.row==m-1且p.col==n-1,即抵達(dá)出口節(jié)點(diǎn),即找到了途徑,結(jié)束假如p.col+1<n且maze[p.row][p.col+1]==0,闡明訪問到出口(找到途徑)即p.row==m-1且p.col==n-1,則逆序?qū)⑼緩綐?biāo)識為3即最終將途徑圖形打印出來。3.菜單項選擇擇☆手動生成迷宮請按:1☆自動生成迷宮請按:2☆退出請按:3{case1:請輸入行列數(shù)(假如超過預(yù)設(shè)范圍則提醒重新輸入)}在調(diào)試過程中,首先使用的是棧進(jìn)行存儲,不過C:\DocmentsandSettings\nev\桌面\Dcbug\Cpp1.exe'歡迎進(jìn)入迷宮求解系統(tǒng)NNKFKNKNNSNNSNNCNNNNKNSNNCKKNNNNSSFNNSNSNNSSRNNNNNSNNN舌動生盛類宴請接:小請選擇你的操作:1請輸入行數(shù):44請輸入列數(shù):4抱歉,你輸入的行列數(shù)超出預(yù)設(shè)范圍<8-39,8-39>,請重新輸入:請輸入行數(shù):4請輸入列數(shù):4請按行輸入迷宮,B表示通路,1表示障礙:迷宮生成結(jié)果如下:迷宮入口請輸入行數(shù):44迷宮生成結(jié)果如下迷喜入口…迷宮路徑為:(3.3)(1.0)(0.0)迷言通路(用☆表示)如下所示:搜狗拼音輸入法全:KK歡迎進(jìn)入迷宮求解系統(tǒng)☆☆手動生成迷言請按:1☆自動生成據(jù)言請按:2☆退出請按:3xkm**xxxmkx?0*xxmk***mxxxmxkmb?xxmm**m**xmxxxk*2請按任意健繼續(xù)...北選宮無解搜物拼音輸入法全:通過本次的課程設(shè)計,使我學(xué)會了怎樣去組織代碼量較大大程序。與此同步,也使我學(xué)會了某些對代碼量較大的的程序進(jìn)行編寫、連接、編譯運(yùn)行、以和調(diào)試和修改的技巧這次的課程設(shè)計涉和到編程語言和數(shù)據(jù)構(gòu)造的知識,規(guī)定和平時的實比相對較高。從本次的課程設(shè)計可以檢查我們對C語言和數(shù)據(jù)構(gòu)造的掌握狀況,同步也檢查了我們對所學(xué)習(xí)過的知識的靈活運(yùn)用狀況。在創(chuàng)新性方面,這次的課程設(shè)計雖然完畢了課程設(shè)計的任務(wù),不過缺乏發(fā)明性的設(shè)計思想,在后來的學(xué)習(xí)過程中還得繼續(xù)努力。[1].嚴(yán)蔚敏編著.數(shù)據(jù)構(gòu)造(C語言版).清華大學(xué)出版社,2023[2].朱戰(zhàn)立.編著.數(shù)據(jù)構(gòu)造——使用C語言.西安交通大學(xué)出版社,2023[4].蘇小紅,孫志崗等編著.C語言大學(xué)實用教程(第2版).電子工業(yè)出版社,})if(maze[i][j]=printf}}if(maze[i][j]=printf)))}}}}}{printf('\n=====================}{printf('\n========================)print(***************************************************************rint***********************************************
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年09月河南省信陽淮濱縣特招醫(yī)學(xué)院校畢業(yè)生和特崗全科醫(yī)生23人筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年09月江蘇淮安市護(hù)理職業(yè)學(xué)院衛(wèi)生健康中心臨床醫(yī)生招聘3人筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年09月廣西柳州市婦幼保健院招聘綜合外科醫(yī)師1人筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年09月廣東珠海市香洲區(qū)招聘衛(wèi)生健康系統(tǒng)事業(yè)單位人員1人筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年09月廣東揭陽市普寧市醫(yī)療衛(wèi)生事業(yè)單位招聘309人筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年09月年阜陽市人民醫(yī)院岳家湖院區(qū)碩士研究生招聘(第二批)筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年09月天津市第三中心醫(yī)院招聘第二輪筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年09月南昌市西湖區(qū)廣潤門街道西湖社區(qū)衛(wèi)生服務(wù)中心招聘中藥師1人筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年09月內(nèi)蒙古鄂爾多斯市準(zhǔn)格爾旗中心醫(yī)院招募護(hù)理崗就業(yè)見習(xí)人員20名筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 2024年08月福建三明清流事業(yè)單位招聘119人(醫(yī)療崗33人)筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 三年級語文下冊 期中綜合模擬測試卷(人教版)
- (新版)制絲操作工(二級)理論考試復(fù)習(xí)題庫-下(多選、判斷題匯總)
- 會議室改造方案
- 丙烯酰胺生產(chǎn)工藝
- VDA6完整版本.3過程審核報告范例
- 電梯維保交接方案
- 通訊設(shè)備故障處理流程圖
- 湖南省煙草專賣局(公司)考試題庫2024
- 苗木采購?fù)稑?biāo)方案
- 超高頻開關(guān)電源技術(shù)的前沿研究
- 特許經(jīng)營管理手冊范本(餐飲)
評論
0/150
提交評論