递归算法
来源:互联网 发布:java ssh2协议 编辑:程序博客网 时间:2024/05/20 02:30
递归算法:是一种直接或间接的调用自身的算法。递归算法的具体实现过程是通过函数或者子过程来完成的,在函数或者子过程的内部,编写代码直接或间接的调用自己,即可完成递归的操作。
下面通过两个例子来具体说明递归的作用
1、用递归实现阶乘
#include<stdio.h>#include<iostream>int fact(int n);int main(){int i;printf("请输入要求阶乘的一个整数:");scanf("%d",&i);printf("%d阶乘的结果为:%d\n",i,fact(i));system("pause");return 0;}int fact(int n){if(n<=1){return 1;}else{return n*fact(n-1);}}2、用递归实现进制的转换
#include<stdio.h>#include<string.h>#include<iostream>//转换的方法void Convert(char *s,int n,int b){//定义一组字符串,16个进制码char bit[]={"0123456789ABCDEF"};int len;if(n==0){strcpy(s,"");return;}Convert(s,n/b,b);//计算出该字符的长度len=strlen(s);//将每个字符放在s[]数组中s[len]=bit[n%b];//在字符串末尾追加\0表示该字符串结束s[len+1]='\0';}void main(){char s[80];int base,old;printf("请输入一个你需要转换的整数:");scanf("%d",&old);printf("请输入需要转换的进制:");scanf("%d",&base);Convert(s,old,base);printf("%s\n",s);system("pause");return;}
更好的理解递归可以参考这篇博客:点击打开http://blog.sina.com.cn/s/blog_95c607dd010132tj.html
0 0
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- Java关键字final、static使用总结
- windows 环境下 cpp 文件命令行编译的配置 & 带参数的main函数的编译和运行
- 禁止选中超链接文字
- UVa 10297 - Beavergnaw
- Ubuntu 提供桌面小工具 screenlet,桌面时钟,桌面贴条
- 递归算法
- sgu109 Magic of David Copperfield II 构造
- 《数据结构》第一章 总结
- “天惊”设擂台向所有消杀产品发出挑战
- java正则表达式中的数量词介绍及区别
- 关于 forName 和 loadClass ,newInstance 和 new
- jquery的几种异步请求,ajax
- 模版:使用Hibernate5个核心接口
- Hibernate基于XML的----联合主键配置