往期文章
1 绪论-数据结构的基本概念
2 绪论-算法
3 线性表-顺序表和链式表概念及其代码实现
4 查找-顺序+折半+索引+哈希
5 插入排序-希尔排序-选择排序-冒泡排序-快速排序-基数排序-外部排序-归并排序
文章目录
1 递归的定义
- 子程序(或函数)直接调用自己或通过一系列调用语句 间接调用自己,称为递归。
- 递归是一种描述问题和解决问题的基本方法。
直接递归调用
void A()
{
...
A();
...
}
间接调用递归
void B()
{
...
C();
...
}
void C()
{
...
B();
...
}
2 Fibonacci数列递归求解和非递归求解
尾递归都能转换成非递归的写法
尾递归是指递归只是出现在return的时候
递归求解
int f(int n)
{
if(n<=1)
return n;//结束条件
else
return(f(n-1)+f(n-2));//递归方程
}