練習 最短路徑 深度搜尋

2021-08-28 13:38:40 字數 1101 閱讀 6267

乙個根據深度搜尋模型寫的最短路徑**

參考如下

啊哈演算法-4.2 p81

/**

* 最短路徑

*/public class shortpath ,//向右走

,//向下走

,//向左走

};//向上走;

//地圖是乙個5*5的矩陣

public static int x = 5, y = 5;

//定義終點

public static int ex = 2, ey = 2;

//地圖容器

public static int map = new int[x][y];

//用來判斷是否經過路徑

public static int flag = new int[x][y];

/*** @param dx 當前x座標

* @param dy 當前y座標

* @param step 用來累加步長

*/public static void dfs(int dx, int dy, int step)

//用來儲存下次可達路徑

int mx, my;

for (int i = 0; i < next.length; i++)

/*flag[mx][my]==0代表之前沒有走過*/

if (flag[mx][my] == 0)

}return;

}/**

* 初始化地圖

** @param end_x

* @param end_y

*/public static void initmap(int end_x, int end_y)

system.out.println();}}

/*** 列印地圖路徑

** @param map

*/public static void printmap(int map)

system.out.println();}}

public static void main(string args)

}

迷宮(深度搜尋 存最短路徑)

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

迷宮最短路徑 深度優先搜尋 C python

從迷宮的起點到終點的最短路徑,用深度優先搜尋 c實現 include int n,m,p,q,min 99999999 int a 100 100 book 100 100 void dfs int x,int y,int step if x p y q for k 0 k 3 k return i...

深度搜尋演算法查詢最短路徑

從圖中可以得到乙個5 5的二維矩陣,利用深度搜尋演算法,求出最短路徑。從最後的執行結果,可以直觀的看出搜尋的過程 實現如下 include pch.h include include include using namespace std define m 99999999 const int ci...