您的位置:首页 > 其它

用递归的方法汉诺塔求次数

2013-11-25 19:46 381 查看
/*

*Copyright (c)2013,烟台大学计算机学院

*All rights reserved.

*文件名称:test.cpp

*作者:孙玲倩

*完成日期:2013年11月25日

*版本号:v1.0

*问题描述:用递归的方法求汉诺塔次数

*/

#include <iostream>

using namespace std;
const int times=3;
long move (int,char,char,char);
int main()
{
long a;
a=move(times,'A','B','C');
cout <<times<<"个盘子需要移动"<<a<<"次."<<endl;
return 0;
}
long move (int n,char A,char B,char C)
{
long c1,c2;
if (n==1)
{
return 1;
}
else
{
c1=move (n-1,A,C,B);
c2=move (n-1,B,A,C);
return c1+c2+1;
}

}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: