java基础递归汉诺塔问题

img

img


这个汉诺塔问题,在第二张图上,首先n等于3然后递归到2,(x,z,y,2)然后再进入一个递归到了(x,y,z,1)这里后边两个字母需要交换,这是为什么呢

这个因为需要保证柱子x、y、z的顺序不变,因为每次移动只能按照这个顺序进行,柱子y和z的顺序需要交换

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^