汉诺塔 Java

来源:互联网 发布:医美网络咨询师好做吗 编辑:程序博客网 时间:2024/06/03 20:21

汉诺塔的Java实现代码:

 

package boge;public class Var {public static void main(String[] args) {TowerOfHanoi(3,1,2,3);}public static void TowerOfHanoi(int n,int x,int y,int z){if(n>0){TowerOfHanoi(n-1,x,z,y);System.out.println("Move top disk from tower "+x+" to top of tower "+y);TowerOfHanoi(n-1,z,y,x);}}}



思想:把x位置的n个圆盘借助位置z移动到目的y;递归实现:首先当n<=0时退出,当n>0时,先将n-1个圆盘从x位置借助y移动到z,然后将最大的一个圆盘从x移动到y,然后再将n-1个圆盘从z借助x移动到y,至此结束。

0 0
原创粉丝点击