1

我在想一个网格,假设在网格中'#'表示路被阻塞,'.'(不带引号的点)表示有路。所以如果A在网格内,那么当他找到时他可以走进去方式(。)例如,

#######
##A####
##.#.##
##.#.##
##...##
#######

对于上面的例子,A​​找到了路,他到达了如下图所示的其他地方:

#######
##.####
##.#A##
##.#.##
##...##
#######

如果我将此问题视为图形,那么我将如何将此网格表示为图形?如何将其表示为邻接列表?我是刚学过 BFS 的图表新手,请用简单的语言回答

4

1 回答 1

1

每个单元格将简单地具有所有 4 个相邻单元格的边缘。因此,每个单元格都将出现在其所有 4 个相邻单元格的邻接列表中。

实际上你不需要显式地构建图表,你可以在网格本身上工作。要表示特定节点,您可以只使用适用单元格的坐标,而要转到邻居,您只需将 x / y 增加/减少 1。

我希望这足够清楚。

于 2013-07-31T12:18:05.703 回答