汉诺塔问题

蹲街弑〆低调 提交于 2020-02-03 07:25:49

汉诺塔问题一直是我想解决的问题之一,汉诺塔也是让我感到编程的神奇之处,想了很久也领悟不了里面的奥秘。 
附上灯哥教学视频https://www.bilibili.com/video/av9830115?from=search&seid=6226553387047262312
递归写法

public class Main {
    public void hanoi(int n, char a, char b, char c) {
        if (n == 1) {
            System.out.println(a + "->" + c);
        }else {
            hanoi(n-1,a,c,b);
            hanoi(1,a,b,c);
            hanoi(n-1,b,a,c);
        }
    }
 
    public static void main(String[] args) {
        Main m =new Main();
        m.hanoi(3, 'a', 'b', 'c');
    }
}


n = N % M + N / M ;

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!