计算最短骑士距离(国际象棋)的算法

时间:2013-10-11 20:29:36

标签: java distance chess shortest

我正在尝试实施Knight-DistanceChess Programming Wiki所述的绝对等级文件距离,但我对int a的内容感到有些困惑和b应该在

int knightDistance(int a, int b).

你不需要两套坐标来计算出来(开始位置和目的地)吗? 我想也许他们使用0,0作为开始,然后你只是给出了开始和结束位置之间的差异,但这会产生糟糕的输出。

这应该如何工作,这个算法适用于任何大小的网格,还是只有8×8?

1 个答案:

答案 0 :(得分:2)

我认为ab是与当前位置的等级和文件距离增量。从对称性来看,只有当前位置与所需目标之间的差异。