广州C/C++培训
达内广州岗顶中心

18087159764

热门课程

广州C++培训:Hanoi塔

  • 时间:2016-11-29
  • 发布:广州C++培训
  • 来源:达内新闻

广州C++培训:Hanoi塔

xstar

规则1:每次只能移动一个圆盘

规则2:任何时候都不允许将较大的圆盘压在较小的圆盘上

规则3:在满足移动规则1和2的前提下,可将圆盘移动到A,B,C中任一塔座上

假设塔座A,B,C排成一个三角形,A->B->C->A构成一顺时针循环.在移动圆盘的过程

中,若是奇数次移动,则将最小的圆盘移动到顺时针方向的下一塔座上;若是偶数移

动,则保持最小的圆盘不动.而在其它两个塔座之间,将较小的圆盘移动到另一塔座

上.

Hanoi塔的递归算法:

void Hanoi(int n,int A,int B,int C)

{

if(n>0)

{

Hanoi(n-1,A,C,B);

Move(n,A,B);

Hanoi(n-1,C,B,A);

}

}

其中,Hanoi(n,A,B,C)表示将塔座A上的n个圆盘依移动规则移动到塔座B上,C为辅助

塔座,Move(n,A,B)表示将塔座A上编号为n的圆盘移动到塔座B上.

广州C++课程,易学,易用,好就业。立即点击官网获取免费学习资料!广州C++培训官网:http://gz.c.tedu.cn/

上一篇:广州C++培训:开始-运行 命令籍
下一篇:广州C++培训:回溯法的一般描述

零基础学编程,先来看策略与委托事件【广州达内】

达内程序员培训:微信小程序的商业价值

编程入门学什么?C/C++的地址那些事儿

达内程序员培训:一嘴一嘴啃Vue

选择城市和中心
贵州省

广西省

海南省

台湾