黑马程序员-递归思想,汉罗塔

来源:互联网 发布:中国失踪儿童最新数据 编辑:程序博客网 时间:2024/05/17 06:49

----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------

主要运用递归思想。代码如下:

class HanoiDemo {public static void main(String[] args){Hanoi h = new Hanoi();h.hanoi(5,'A','B','C');}}class Hanoi{private static int count = 0;//计数器//将塔座a上按直径由小到大且自上而下编号为1到n的n个//圆盘搬到塔座c上,b可用于辅助塔座public void hanoi(int n,char a,char b,char c){if(n == 1)move(a,1,c);//将编号为1的圆盘从塔座a搬到塔座c上else{//将塔座a上编号为1到n-1的圆盘搬到塔座b,c作为辅助塔hanoi(n-1,a,c,b);//将塔座a上编号为n的圆盘搬到塔座c上move(a,n,c);//将塔座b上编号为1到n-1的圆盘搬到塔座c上,a作为辅助塔hanoi(n-1,b,a,c);}}//搬动操作public void move(char a,int n,char c){System.out.println("第"+(count++)+"次搬运:"+"将塔座"+a+"上的圆盘"+n+"搬到塔座"+c);}}
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
原创粉丝点击