1.建立无向图,应该是棋盘格数的方阵,比如64×64(国际象棋)或者90×90,初始化为全零.根据马的走法,对可以直达的两格建立一条边,就是对应位置为1.
2.然后指定一个出发点(当然也可以是从所有点出发一一去试),沿着这些边到达下一格,并记录已达到的格中.
3.如果不重复完成,则成功.如果无法继续走到未到达的格,只能到已到达的格子,则失败.
4.这个走棋的过程需要一种策略来遍历各种情况.比如我们可以规定如果有最多八种可能,则马先测试走那种,这个编写成递归就非常方便.
1.建立无向图,应该是棋盘格数的方阵,比如64×64(国际象棋)或者90×90,初始化为全零.根据马的走法,对可以直达的两格建立一条边,就是对应位置为1.
2.然后指定一个出发点(当然也可以是从所有点出发一一去试),沿着这些边到达下一格,并记录已达到的格中.
3.如果不重复完成,则成功.如果无法继续走到未到达的格,只能到已到达的格子,则失败.
4.这个走棋的过程需要一种策略来遍历各种情况.比如我们可以规定如果有最多八种可能,则马先测试走那种,这个编写成递归就非常方便.