迷宮問題 深搜

2021-06-27 03:50:33 字數 917 閱讀 3747

簡單的實現了迷宮(深搜 並非是最短路徑)。

我們規定'1'為牆,'0'為通路。為了避免越界,在迷宮外面加了一堵牆。當然也可以不需要牆。

實現很簡單,用乙個陣列棧儲存已訪問過的位置,用四個if語句判斷東南西北四個方向能否走通。

若往前已無路可走便退回上乙個位置。

具體實現如下:

#include#include#define n 6

int table[n][n]=

;char *defindirection[4] = ;

int stack[n*n] = ;

void printtable(int t[n])

printf("\n"); }}

void printroute(int t[n]) }}

// 迷宮入口 1,1 出口 3,4

迷宮問題(深搜

d 迷宮問題 crawling in process.crawling failed time limit 1000msmemory limit 65536kb64bit io format i64d i64u submit status description 定義乙個二維陣列 int maze ...

迷宮問題(深搜 回溯)

time limit 1 sec memory limit 128 mb 64bit io format lld submit status web board 設有乙個n n 2 n 10 方格的迷宮,入口和出口分別在左上角和右上角。迷宮格仔中分別放0和1,0表示可通,1表示不能,入口和出口處肯定...

迷宮問題(廣搜與深搜)

定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,不能斜著走,要求程式設計序找出從左上角到右下角的最短路線。input 乙個5 5的二維陣列,表示乙個迷宮。資料保證有唯一解。output 左上角到右下角的最短路徑,格式如樣例所示。sa...