随笔分类 - 汉诺塔问题
摘要:View Code #include"iostream"using namespace std;int k=0;void hanoi(int m , char a ,char b, char c){ if(m==1) { k++; printf("%c->%c ",a , c); return; } hanoi(m-1, a, c , b); printf("%c->%c ",a , c); k++; hanoi(m-1 , b, a, c);}int main(){ int n; char x,y,z; while(ci
阅读全文
摘要:View Code //**************************************************Description 问题的提出:约19世纪末,在欧州的商店中出售一种智力玩具,在一块铜板上有三根杆(分别使A、B、C),最左边的杆上自上而下、由小到大顺序串着由64个圆盘构成的塔。目的是将最左边杆上的盘全部移到右边的杆上,条件是一次只能移动一个盘,且不允许大盘放在小盘的上面。这是一个著名的问题,几乎所有的教材上都有这个问题。由于条件是一次只能移动一个盘,且不允许大盘放在小盘上面,所以64个盘的移动次数是:18446744073709551615 这是一个天文数字,若每
阅读全文