貌似是汉诺塔的递归程序:
这是我写的汉诺塔递归函数:
////////////////////////////////////////////////////
//Hanoi()函数
递归求解汉诺塔问题
//n:盘子的个数
A,B,C表示三个柱子
//即把A上所有的盘子,以B为过渡全部移到C上
////////////////////////////////////////////////////
void Hanoi(int n,char A,char B,char C)
{
if(n==1)
{
//递归结束的条件
cout<<"把顶部的盘子从柱子:"<<A
<<"------->"<<C<<endl;
}
else
{
//以C作为过渡把A上的上面n-1个盘子移到B上
Hanoi(n-1,A,C,B);
cout<<"把顶部的盘子从柱子:"<<A
<<"------->"<<C<<endl;
//以A作为过渡把B上所有的n-1个盘子全部移到C上
Hanoi(n-1,B,A,C);
}
};
/////////////////////////////////////Hanio()函数结束