程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java求解漢諾塔成績示例

java求解漢諾塔成績示例

編輯:關於JAVA

java求解漢諾塔成績示例。本站提示廣大學習愛好者:(java求解漢諾塔成績示例)文章只能為提供參考,不一定能成為您想要的結果。以下是java求解漢諾塔成績示例正文


思緒以下:

要完成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');// 完成挪動算法
    }
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved