您的位置:首页 > 其它

汉诺塔问题

2016-03-17 09:00 211 查看
代码:

#include <iostream>
using namespace std;
void move(char src,char dest);
void hanoi(int n,char src,char medium,char dest);
int main()
{
int m;
cout<<"Enter the number of diskes:";
cin>>m;
cout<<"the steos to moving "<<m<<" diskes:"<<endl;
hanoi(m,'A','B','C');
return 0;
}
void hanoi(int n,char src,char medium,char dest)
{
if(n==1)
move(src,dest);
else
{
hanoi(n-1,src,dest,medium);
move(src,dest);
hanoi(n-1,medium,src,dest);
}
}
void move(char src,char dest)
{
cout<<src<<"-->"<<dest<<endl;
}


运行结果:



学习体会:看过多次了,但是对原理还是不太懂,还要多看几次熟悉
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: