package demo27;
//分治算法
public class Fenzhi {
public static void main(String[] args) {
char A = 'A';
char B = 'B';
char C = 'C';
fenzhi(3,A,B,C);
}
//分治算法
public static void fenzhi(int num,char A,char B,char C){
//只有一个盘时
if (num == 1 ){
System.out.println( "第1个盘从 " + A + " - > " + C);
}else {
//两个盘及其以上
//总是看成最下面的一个盘和上面的一个盘
//然后把上面的盘移动到B盘
fenzhi(num - 1,A,C,B);
System.out.println("第" + num + "盘从 " + A + " - > " + C);
//然后把最下面的移动到C盘
fenzhi(num - 1,B,A,C);
}
}
}
分治算法解决汉诺塔问题
最新推荐文章于 2024-10-19 12:44:50 发布