Tower of Hanoi

  1. ABC 三根柱子
  2. 当前 A 柱套了 n 个圆环
  3. 由上至下这 n 个圆环的直径依次变大
  4. 要将所有圆环从 A 柱移到 C
  5. 显而易见 B 柱是辅助
  6. 每次移动 1 个圆环
  7. 始终保持 小圆环在上大圆环在下
public class Hanoi {
    // 描述移动过程
    // n 个圆环
    // a 是起始柱 
    // b 是辅助柱
    // c 是目的柱
    public void move(int n, char a, char b, char c) {
        if (1 == n) {
            System.out.println("From " + a + " To " + c);
        } else {
            move(n - 1, a, c, b);
            move(1, a, b, c);
            move(n - 1, b, a, c);
        }
    }

    public static void main(String[] args){
        Hanoi hanoi = new Hanoi();
        hanoi.move(4, 'A', 'B', 'C');
    }
}
Illustration of a recursive solution for the Towers of Hanoi puzzle with 4 disks
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 高级钳工应知鉴定题库(858题) ***单选题*** 1. 000003难易程度:较难知识范围:相关4 01答案:...
    开源时代阅读 11,287评论 1 9
  • 1. 下列叙述错误的是()。 (2.0 分) A. 质量管理包括QA和QC一切活动的全部过程 B. 影像质量是指对...
    我们村我最帅阅读 9,668评论 0 8
  • 这世界没什么善恶与分明 大家闭着眼睛 都说它模糊又不清 却还虚伪的问着各自都清不清醒 你解释说是雾霾的原因 我说你...
    Z周快阅读 1,823评论 2 2
  • 曾经我因离别而哭泣躲在寂寞的角落想着分离那一刻的伤心与痛苦任泪水滑过滴落在心灵海洋溅起一朵朵思恋的浪花期待重逢如今...
    岛上鱼儿儿儿阅读 2,325评论 0 0
  • 又是新的一页,又是一个清晨,马河破天荒地早早的起床,他匆匆胡乱地洗簌了一番,一边张着大嘴一边伸着懒腰,那神态好似...
    北海涛声阅读 3,440评论 7 10

友情链接更多精彩内容