汉罗塔的递归实现
来源:互联网 发布:软件编程专业就业方向 编辑:程序博客网 时间:2024/05/17 02:44
首先是汉罗塔的递归实现
#include <stdio.h>void move(char a,int n,char b){//把编号为n的盘从a移动到bprintf("Move %d from %c to %c\n",n,a,b);}void hanio(int n,char x,char y,char z){//把编号从1到n的盘通过y做辅助从x移动到z//要求://1.每次只能移动一个盘//2.任何时候大盘(这里是编号大的)不能在小盘之上if(n==1){move(x,1,z);}else{hanio(n-1,x,z,y);move(x,n,z);hanio(n-1,y,x,z);}}int main(){hanio(3,'A','B','C');return 0;}运行结果如下:
n=3时:移动2^3-1=7次
当n=4时:移动2^4-1=15次
所以移动次数成指数增长
1 0
- 汉罗塔的递归实现
- 汉罗塔问题的递归实现
- c++实现递归的递归
- 递归:汉罗塔问题的程序实现
- sqlServer2005递归的实现
- strlen的递归实现
- 递归实现的计算器
- 汉诺塔的递归实现
- strcmp的递归实现
- 汉诺塔的递归实现
- 排列组合的递归实现
- 汉诺塔的实现 递归
- 排列的递归实现
- 格雷码的递归实现
- 递归实现的 汉诺塔
- 表达式的递归实现
- 单链表的递归实现
- 汉诺塔的递归实现
- 浅谈vqmod
- CocoaPods 最近的一点小变化
- R语言-正则表达式,替换
- pietimer-基于jQuery的扇形定时器
- pageContext对象的用法
- 汉罗塔的递归实现
- careercup sumarry
- VisualGDB for Linux 安装配置
- IMEI
- c#基础1
- Linux学习入门之Java环境搭建
- Java之数组查询Arrays类的binarySearch()方法详解
- Codeforces Round #327 (Div. 2) (B. Rebranding 字符串的操作)
- CodeForces-591B Rebranding