Hanoi問題(Java實(shí)現(xiàn))

      網(wǎng)友投稿 880 2025-03-31

      Hanoi 塔問題(Java實(shí)現(xiàn))

      Hanoi 塔問題是一個很經(jīng)典的遞歸問題

      設(shè)a,b,c是3個塔座。開始時,在塔座a上有一疊共n個圓盤,這些圓盤自下而上,由大到小地疊在一起。各圓盤從小到大編號為1,2,…,n,現(xiàn)要求將塔座a上的圓盤移到塔座b上,并仍按同樣順序疊置。在移動圓盤時應(yīng)遵守以下移動規(guī)則:

      規(guī)則1:每次只能移動1個圓盤;

      規(guī)則2:任何時刻都不允許將較大的圓盤壓在較小的圓盤之上;

      規(guī)則3:在滿足移動規(guī)則1和2的前提下,可將圓盤移至a,b,c中任一塔座上。

      思路

      如果只有 1 個圓盤,a --> c

      如果圓盤數(shù)大于1

      將 n - 1 個圓盤,從 a 借助 c 移動到 b

      將剩下 1 個圓盤從 a 移動到 c

      將 n - 1 個圓盤,從 b 借助 a 移動到 c

      Java源代碼

      import java.util.Scanner; /* * 若塵 */ /** * Hanoi 塔問題 * @author ruochen * @version 1.0 */ public class Hanoi { public static void main(String[] args) { int n; Scanner sc = new Scanner(System.in); System.out.print("Please input num: "); n = sc.nextInt(); System.out.println("Process: "); move(n, 'A', 'B', 'C'); } /** * 圓盤移動 * @param n 圓盤個數(shù) * @param a 需要移動的位置 * @param b 借助的位置 * @param c 移動目的地 */ public static void move(int n, char a, char b, char c) { if (n < 0) { System.out.println("enter n > 0"); } else if (n == 1) { System.out.println(a + "-->" + c); } else { move(n - 1, a, c, b); move(1, a, b, c); move(n-1, b, a, c); } } }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      14

      15

      16

      17

      18

      19

      20

      21

      22

      23

      24

      Hanoi 塔問題(Java實(shí)現(xiàn))

      25

      26

      27

      28

      29

      30

      31

      32

      33

      34

      35

      36

      37

      38

      39

      40

      41

      42

      43

      Java

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:項(xiàng)目計(jì)劃書甘特圖是什么意思?
      下一篇:項(xiàng)目管理的具體方法有哪些
      相關(guān)文章
      亚洲中文字幕丝袜制服一区| 亚洲国产综合AV在线观看| 亚洲国产精品成人午夜在线观看 | 亚洲日本VA中文字幕久久道具| 亚洲理论片中文字幕电影| 亚洲A∨无码无在线观看| 久久被窝电影亚洲爽爽爽| 亚洲电影日韩精品 | 亚洲激情中文字幕| 国产精品亚洲成在人线| 亚洲综合另类小说色区| 成人午夜亚洲精品无码网站| 在线亚洲精品自拍| 亚洲熟妇无码乱子AV电影| 亚洲中文字幕无码爆乳AV| 曰韩亚洲av人人夜夜澡人人爽| 国产成人高清亚洲| a级亚洲片精品久久久久久久 | 亚洲av午夜精品一区二区三区| 国产亚洲福利精品一区二区| 亚洲AV网站在线观看| 亚洲国产天堂久久久久久| 久久精品国产精品亚洲艾草网美妙 | 亚洲视频精品在线| 久久精品国产亚洲AV无码麻豆 | 亚洲第一成人影院| 亚洲一区二区三区在线播放 | 亚洲精品视频久久| 亚洲精品动漫在线| 亚洲av一本岛在线播放| 亚洲精品成人无码中文毛片不卡| 国产精品亚洲成在人线| 亚洲第一第二第三第四第五第六| 亚洲国产精品久久久久秋霞小 | 久久国产亚洲高清观看| 亚洲精品乱码久久久久蜜桃| 亚洲天堂一区二区三区四区| 亚洲AV无码无限在线观看不卡 | 亚洲国产成人高清在线观看| 亚洲今日精彩视频| 亚洲一区欧洲一区|