[英]Finding the shortest path in a maze
我是業余程序員,學習如何編程。 我從來沒有上過任何計算機科學課程,所以我很難解決這個瑣碎的問題:
class Room {
String name;
ArrayList<Room> neighbors = new ArrayList<Room>();
// constructor with name
// getters
void addNeighbor(Room room) {
neighbors.add(room);
}
}
class Finder {
void findShortestPath(Room start, Room end) {
// ?
}
}
每個房間都有一些鄰居。 超過4,所以它不像矩陣導向的問題。 您將獲得最終房間,並且必須找到從起始房間開始的最短路徑(比較房間的名稱)。 結果應該是“方式”,如:
開始:廚房
結束:廁所
路徑:廚房,客廳,走廊,卧室,廁所
我想我必須對房間使用一些遞歸,我想我應該保存在已經存在於某個堆棧中的位置。 但我真的不知道如何開始。
你們中的一些CS人可以幫助我嗎? 謝謝
你想寫一個廣度優先的搜索。 有關此主題的資源很多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.