代码:

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

    运行结果:
    image.png