testhanoi.java
来自「由浅入深的介绍JAVAse的基本编程思想」· Java 代码 · 共 26 行
JAVA
26 行
public class TestHanoi{
private int times = 0;
public static void main(String args[]){
TestHanoi t = new TestHanoi();
t.hanoi(3,'A','B','C');
}
public void hanoi(int n,char a,char b,char c){
//n: 待搬运的盘子总数
//a: 源塔 b: 辅助塔 c:目标塔
//如果n==1,则直接搬运
if(n==1){
times++;
System.out.println(times + ":\t" + "将p1从 " + a + " 搬到 " + c);
}else{
//如果n>1,则分解成几步来处理
//step1:将n-1个盘子从a搬到b,借助于c
this.hanoi(n-1,a,c,b);
//step2:将第n个盘子从a搬到c
times ++;
System.out.println(times + ":\t" + "将p" + n + "从 " + a + " 搬到 " + c);
//step3:将n-1个盘子从b搬到c,借助于a
this.hanoi(n-1,b,a,c);
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?