一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java求解漢諾塔問題示例

java求解漢諾塔問題示例

2019-11-08 14:22java技術網 JAVA教程

漢諾塔問題的描述如下:有3根柱子A、B和C,在A上從上往下按照從小到大的順序放著一些圓盤,以B為中介,把盤子全部移動到C上。移動過程中,要求任意盤子的下面要么沒有盤子,要么只能有比它大的盤子。編程實現3階漢諾塔的求

思路如下:

要實現3階漢諾塔的求解步驟,也就是說初始狀態時,A上從上到下有三個盤子,分別為1號盤、2號盤和3號盤,其中1號盤最小,3號盤最大;
判斷剩余盤子個數,如果只有一個盤子就退出迭代,如果有大于一個盤子就繼續迭代。
代碼如下:

 

復制代碼代碼如下:

public class HanoiTower {
    public static void moveDish(int level, char from, char inter, char to) {
        if (level == 1) {// 如果只有一個盤子就退出迭代
            System.out.println("從 " + from + " 移動盤子 1 號到 " + to);
        } else {// 如果有大于一個盤子就繼續迭代
            moveDish(level - 1, from, to, inter);
            System.out.println("從 " + from + " 移動盤子 " + level + " 號到 " + to);
            moveDish(level - 1, inter, from, to);
        }
    }

    public static void main(String[] args) {
        int nDisks = 3;// 設置漢諾塔為3階
        moveDish(nDisks, 'A', 'B', 'C');// 實現移動算法
    }
}

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美激情精品久久久久久不卡 | 天海翼最新作品 | 精品一区二区三区在线成人 | 69av免费视频| 男人晚上看的 | 91香蕉在线 | 爽好舒服快想要免费看 | 丝瓜视频黄色在线观看 | 亚洲视频在线观看地址 | a国产在线| 超碰av | 深夜在线观看网站 | 好猛好紧好硬使劲好大刺激视频 | 2018久久精品热在线观看 | 日本手机在线 | 95视频在线观看在线分类h片 | 国产精品久久久久久久福利院 | 免费看成人毛片日本久久 | 国产一区二区视频在线播放 | 日韩欧美亚洲每日更新网 | 久久精品亚洲热综合一本 | 貂蝉沦为姓奴小说 | www一区| www.精品视频 | 欧美最新在线 | 日本精品久久久久中文字幕 1 | 国产精品嫩草影院在线看 | 91制片厂制作果冻传媒破解 | 日本在线小视频 | 校花小雪灌满了男人们的浓浆 | 国产伦码精品一区二区三区 | 手机av影院 | 龟甲情感超市全文阅读 小说 | 黑人好大好硬好深好爽想要h | 白丝校花好湿好紧 | 99精品在线免费 | 日韩国产欧美一区二区三区 | 成品人视频免费观看 | 国产精品国语自产拍在线观看 | 日本一本二本三区免费 | 男人天堂亚洲 |