java递归问题——汉诺塔
创始人
2024-05-19 15:33:32
0

目录

🌲🌲什么是汉诺塔?

 🐰 当只有1个圆盘的时候:

 🐰 当只有2个圆盘的时候:

 🐰 当只有3个圆盘的时候:

🌲🌲汉诺塔代码

🐰思路

🐰代码


🌲🌲什么是汉诺塔?

汉诺塔(Tower of Hanoi),又称河内塔,是一个源于印度古老传说的益智玩具。大焚天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。

 🐰 当只有1个圆盘的时候:

A->C 只需要移动1次;

 🐰 当只有2个圆盘的时候:

A->B,A->C,B-C 需要移动3次;

 🐰 当只有3个圆盘的时候:

 A -> C, A -> B ,  C -> B , C -> A , B -> A , C -> B , A -> C 需要7次;

发现规律:

只有1片圆盘的时候,1次,2的1次方减1;

当有2片圆盘的时候,3次,2的2次方减1;

当有3片圆盘的时候,7次,2的3次方减1;

那么当有n片圆盘的时候,移动的总次数sum=2^n -1;

🌲🌲汉诺塔代码

🐰思路

pos1,pos2,pos3不是固定的。

我有3个圆盘时,第一步:我需要将上面两个盘子通过C移动到B,移动几次我不管,反正就是借助C移动到B,那么B就是目标位置,C就是中转位置;

第二步:需要将A移动到C;

第三步:我需要把第二大的圆盘(在B上),通过A移动到C上,那么B就是初始位置,A就是中转位置,C就是目标位置。

以此类推

当我有n个圆盘时,第一步,我需要将n-1个盘通过C移动到B,移动几次我不管。

第二部,将A上的一个盘移动到C;

第三步:需要把第n-1个盘通过A移动到C上,B就是初始位置,A就是中转位置,C就是目标位置。

循环往复,直到n-1等于1时便可终止递归

🐰代码

    //汉诺塔//pos1:初始位置//pos2:中转位置//pos3:目标位置//n是有几个片
public static void Hanoi(int n,char pos1,char pos2,char pos3) {if(n==1){move(pos1,pos3);return;}Hanoi(n-1,pos1,pos3,pos2);move(pos1, pos3);Hanoi(n-1,pos2,pos1,pos3);
}public static void main7(String[] args) {Hanoi(3,'A','B','C');}public static void move(char pos1,char pos3){System.out.println(pos1+"->"+pos3);
}

相关内容

热门资讯

以春节为话题的作文600字 【精品】以春节为话题的作文600字4篇  在学习、工作乃至生活中,大家都经常看到作文的身影吧,作文要...
端午节看图写话作文 端午节看图写话作文  导语:每年农历五月初五为端午节,是中国民间的传统节日。下面是小编整理的端午节看...
又是一年清明节作文 2020年又是一年清明节作文(通用10篇)  无论在学习、工作或是生活中,大家都接触过作文吧,借助作...
教师节的作文700字 教师节的作文700字四篇  在平平淡淡的学习、工作、生活中,大家都经常接触到作文吧,根据写作命题的特...
欢乐圣诞节优秀作文 欢乐圣诞节优秀作文(精选12篇)  在日常学习、工作抑或是生活中,许多人都写过作文吧,作文是从内部言...
国庆游记作文 国庆游记作文9篇  在日常生活或是工作学习中,大家一定都接触过作文吧,借助作文可以宣泄心中的情感,调...
开心的一天作文300字 开心的一天作文300字  今天,早上第三节课是数学课.我很高兴,因为我已经有九朵红花啦,还差一朵红花...
断情笔歌词完整版 断情笔歌词完整版  歌词是诗歌的一种,入乐的叫歌,不入乐的叫诗(或词)。入乐的歌在感情抒发、形象塑造...
游东莞人民公园400字作文 游东莞人民公园400字作文  今天我们一家去人民公园游玩,到了人民公园时,那里的人密密麻麻、人山人海...
会飞的木屋作文 会飞的木屋作文(精选25篇)  在平时的学习、工作或生活中,大家对作文都再熟悉不过了吧,借助作文可以...
学游泳作文400字 学游泳作文400字  在暑假里发生过许多有意义的事,有学游泳,学做菜,学拖地......其中最有意义...
春节习俗的作文800字 春节习俗的作文800字六篇  无论在学习、工作或是生活中,大家都经常接触到作文吧,通过作文可以把我们...
母亲节作文 精选母亲节作文五篇  在学习、工作、生活中,大家都有写作文的经历,对作文很是熟悉吧,作文要求篇章结构...
快乐的节日作文 快乐的节日作文(精选41篇)  在平平淡淡的日常中,大家都有写作文的经历,对作文很是熟悉吧,借助作文...
作文 八卦之旅系列 作文 八卦之旅(系列)  八卦之旅(1)  ——哪里来的狗尾巴草  “快点!假日山庄到了!”经历了不...
深圳下了雪作文(优秀篇)   你还好吗,蜗牛?  打下这一连串的字符时,心中或许还充满了一种担忧和恐惧。但我想,这样子的问候,...
重阳节的作文 【精品】重阳节的作文700字3篇  每年的九月九日就是我们的重阳节,重阳节是怎么来的呢?下面是小编帮...
中秋节的作文700字 中秋节的作文700字十篇  在学习、工作或生活中,许多人都写过作文吧,写作文可以锻炼我们的独处习惯,...
逍遥游优秀作文850字 逍遥游优秀作文850字  夜的静谧总是很容易让人联翩浮想的。  白天是一个难熬的节日,却又不舍得就这...
国庆节作文400字 关于国庆节作文400字(通用24篇)  无论在学习、工作或是生活中,大家总免不了要接触或使用作文吧,...