私はプログラムする方法を学ぶアマチュアプログラマーです。迷路で最短経路を見つける
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を超えると、マトリックス指向の問題に似ていません。あなたは終わりの部屋を与えられています。部屋の名前を比較して、最初の部屋から最短の経路を見つけなければなりません。
スタート::キッチン
終了:トイレ
パス:キッチン、リビングルーム、廊下、ベッドルーム、トイレ
私は私はいくつかの再帰を使用しなければならないと思う結果が「道」のようにする必要があります部屋と私は私がすでにいくつかのスタックにあった場所を保存する必要がありますと思う。しかし、私は実際に始める方法を知らない。
あなたのうちの何人かは私を助けてくれますか?ありがとう
http://en.wikipedia.org/wiki/A*_search_algorithm – jonmorgan
各部屋には、費用がかかるルートが必要です。その後、ルートをトラバースすることができます。 –
@JakobBowyerちょうど1としてコストを取る:) –