数据结构--第七天

递归

-递归的概念

递归其实就是一种解决问题的办法,在C语言中:递归就是函数自己调用自己

-递归的思想

递归的思考方式就是把大事化小的过程

递归的 就是递推 的意思, 就是回归的意思

递归是少量的代码完成大量的运算

-递归的限制条件

1.递归存在限制条件当满足这个限制条件,便不再继续

2.每次递归调用之后越来越接近这个限制条件

-示例代码

复制代码
#include <stdio.h>

//求和
int sum(int n){
    //递归终止条件
	if(n==1){
		return 1;	
	}
	return sum(n-1)+n; 
}

//求菲波纳妾数列
int fib(int n){
    //递归终止条件
	if(n==1 || n==2){
		return 1;
	}
	return fib(n-1)+fib(n-2);
}

//猴子吃桃
int monkey(int n){
    //递归终止条件
	if(n==1){
		return 1;	
	}
	return 2*(monkey(n-1)+1);
}

int main(){
	int res_1=sum(100);
	printf("res=%d",res_1);
	int res_2=fib(6);
	printf("res=%d",res_2);
	int res_3=monkey(4);
	printf("res=%d",res_3);
	return 0;
}

-输出结果

相关推荐
学嵌入式的小杨同学40 分钟前
【嵌入式 Linux 实战 1】Ubuntu 环境搭建 + 目录结构详解:嵌入式开发入门第一步
linux·c语言·开发语言·数据结构·vscode·vim·unix
Ada's1 小时前
【计算机基础系列】001:计算机科学与技术
数据结构
梦幻精灵_cq1 小时前
《双征color》诗解——梦幻精灵_cq对终端渲染的数据结构设计模型式拓展
数据结构·python
漫随流水2 小时前
leetcode回溯算法(491.非递减子序列)
数据结构·算法·leetcode·回溯算法
陳10302 小时前
C++:二叉搜索树
开发语言·数据结构·c++
睡一觉就好了。2 小时前
排序--直接排序,希尔排序
数据结构·算法·排序算法
wen__xvn3 小时前
基础算法集训第06天:计数排序
数据结构·算法·leetcode
鱼跃鹰飞3 小时前
LeetCode热题100: 49.字母异位词分组
java·数据结构·算法·leetcode
好奇龙猫4 小时前
【大学院-筆記試験練習:线性代数和数据结构(16)】
数据结构·线性代数·决策树
hope_wisdom4 小时前
C/C++数据结构之用数组实现队列
c语言·数据结构·c++·队列