#include<iostream>
using namespace std;
void hanoiTowers(int n, int a, int b, int c)
{
if (n > 0)
{
hanoiTowers(n - 1, a, c, b);
cout << "从第" << a << "个盘子移到第"<<b<<"个盘子"<< endl;
hanoiTowers(n-1, c, b, a);
}
}
int main()
{
hanoiTowers(3, 1, 2, 3);
system("pause");
return 0;
}
在书上看到的一种递归,运行了一下是正确的,但是让人很难理解!!
看了好久没明白意思,
请各路大神给小生解释一二,小生感激不尽。