【发布时间】:2015-04-21 19:25:21
【问题描述】:
假设我的矩阵是
7 1 2
3 5 6
4 8 9
目标配置排序一,如下:
1 2 3
4 5 6
7 8 9
使用曼哈顿距离算法,我可以将“7”到其目的地的距离计算为 2 步,但是矩阵是连续的,也就是说我可以在两个方向上移动行和列,所以“7”距离它只有一步之遥正确的位置。
如何修改曼哈顿距离算法以反映该属性?
谢谢。
【问题讨论】:
-
我认为这与曼哈顿距离无关。它更多的是一个实现细节。您只需要实现您的数据结构(或求解器)来表示环面结构。
-
当你没有展示你当前的算法时,很难建议修改。我怀疑我会使用模运算并允许我尝试在各个方向移动
(height+1)/1位置。
标签: java algorithm matrix distance