网格表示为图形

时间:2013-07-31 12:08:10

标签: data-structures graph

我正在考虑一个网格,并假设在网格'#'表示方式被阻止,'。'(没有引号的点)表示有一种方式。所以如果A在网格内,那么他可以走进里面当他找到方式时(。)  如,

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

对于上面的例子,A​​找到了方法,他到达了下图中的其他地方:

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

如果我将此问题视为图形,那么我将如何将此网格表示为图形? 如何将此表示为邻接列表? 我刚刚刚刚用图表学习BFS,请用简单的方式回答

1 个答案:

答案 0 :(得分:1)

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

实际上,您不需要显式构建图形,您只需处理网格本身。要表示特定节点,您只需使用适用单元格的坐标并转到邻居,您只需将x / y增加/减少一个。

我希望这很清楚。