#include "stdafx.h"
#include <iostream>
using namespace std;
void han(int n,char A,char B,char C)
{
if(n==1)
{
cout<<A<<' '<<C<<endl;//递归出口,将A上的盘子移动到C
}
else
{
han(n-1,A,C,B);//将n-1个盘子借助C移动到B
cout<<A<<' '<<C<<endl;//将A上的盘子移动到C
han(n-1,B,A,C);//将B上的借助A移动到C
}
}
int main(int argc, char* argv[])
{
han(2,'A','B','C');
return 0;
}
汉罗塔问题
最新推荐文章于 2020-08-12 10:46:40 发布