汉诺塔小游戏
1 public class hanoitower{ 2 public static void main(String[] args){ 3 4 Tower tower = new Tower(); 5 tower.move(6,'A','B','C'); 6 7 8 } 9 } 10 11 class Tower{ 12 //方法 13 //num 表示移动的个数,a,b,c分别表示A塔,B塔,C塔 14 public void move(int num,char a,char b,char c){ 15 //如果只有一个盘 num = 1 16 if(num == 1){ 17 System.out.println(a + "->" + c); 18 }else{ 19 //如果有多个盘,可以看成两个,最下面的和最上面的所有盘(num -1) 20 //(1)先移动和上面所有的盘到b,借助c 21 move(num - 1,a,b,c); 22 //(2)把最下面的这个盘,移动到c 23 System.out.println(a + "->" + c); 24 //(3)再把b塔的所有盘,移动到c,借助a 25 move(num - 1,b,a,c); 26 } 27 } 28 }