#include<iostream>
using namespace std;
void hanuota(int,char,char,char);
int main()
{
int sum;
cin>>sum;
char a='a',b='b',c='c';
hanuota(sum,a,b,c); //函数的意义是把sum个盘子从a借助b移动到c.
}
void hanuota(int n,char a,char b,char c)
{
if(n==1)
{
cout<<a<<"->"<<c<<endl;
}
else {
hanuota(n-1,a,c,b);
cout<<a<<"->"<<c<<endl;
hanuota(n-1,b,a,c);
}
}
汉诺塔问题(递归算法)
最新推荐文章于 2023-02-15 12:03:50 发布