[英]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.