//汉诺塔问题 public class Hannoi { public static void main(String []args){ Tower tower = new Tower(); tower.move(5,'A','B','C'); } } class Tower { //num 表示要移动的个数 public void move(int num,char a,char b,char c){ //如果只有一个盘num =1 if(num == 1){ System.out.println(a + "--->" + c); }else{ //如果有多个盘,可以看出两个盘,最下面的和上面的所有盘 //(1) 先移动上面的所有盘到b,借助c move(num-1,a,c,b); //(2) 把最下面的盘,移动到c盘 System.out.println(a + "--->" + c); //(3) 再把b盘的所有盘,移动到c盘,借助a move(num-1,b,a,c); } } }
标签:char,Java,move,问题,num,汉诺塔,Tower,public From: https://www.cnblogs.com/dbcxy/p/16839773.html