算法与数据结构之递推法

简介: 算法与数据结构之递推法

1.递推算法的思想:

利用已知的条件不断推导未知的信息。

2.递推算法的分类:

(1).顺推法
(2).逆推法

3.逆推算法的应用:

《斐波那契数列》

  • 问题:斐波那契数列又叫兔子数
    月数:1 2 3 4 5 6 7 8…
    对数:1 1 2 3 5 8 13 21…
  • (1).解决核心思想:
    将数字转化成一个公式模型
  • (2).递推公式模型:
    F ( 1 ) = F ( 2 ) = 1 F(1)=F(2)=1F(1=F(2)=1
    F ( n ) = F ( n − 1 ) + F ( n − 2 ) F(n)=F(n-1)+F(n-2)F(n)=F(n1)+F(n2)

4.代码示例:

首先头文件分别定义stdio.h引用库函数

其次#define NUM 13

int main()
{
int i;
int F[NUM] = { 1,1 };//保存兔子的初始数据
for (i = 2; i <NUM; i++)
{
  F[i] = F[i - 1]+F[i - 2];
}
for (i = 0; i < NUM; i++)
  printf("第%d月兔子总数:%d\n", i, F[i]);
return 0;
}

5.执行程序图:

目录
相关文章
|
3天前
|
算法
基于最小二乘递推算法的系统参数辨识matlab仿真
该程序基于最小二乘递推(RLS)算法实现系统参数辨识,对参数a1、b1、a2、b2进行估计并计算误差及收敛曲线,对比不同信噪比下的估计误差。在MATLAB 2022a环境下运行,结果显示了四组误差曲线。RLS算法适用于实时、连续数据流中的动态参数辨识,通过递推方式快速调整参数估计,保持较低计算复杂度。
|
6天前
|
机器学习/深度学习 存储 算法
【初阶数据结构】算法效率大揭秘 | 时间与空间复杂度的深度剖析
【初阶数据结构】算法效率大揭秘 | 时间与空间复杂度的深度剖析
|
15天前
|
机器学习/深度学习 算法 Java
[算法与数据结构] 谈谈线性查找法~
该文章详细介绍了线性查找法的基本概念与实现方法,通过Java代码示例解释了如何在一个数组中查找特定元素,并分析了该算法的时间复杂度。
|
1天前
|
存储 算法 Java
数据结构和算法--分段树
数据结构和算法--分段树
7 0
|
4天前
|
算法
计科一二班算法数据结构实验9答案
计科一二班算法数据结构实验9答案
9 0
|
5天前
|
算法 Java 测试技术
数据结构 —— Java自定义代码实现顺序表,包含测试用例以及ArrayList的使用以及相关算法题
文章详细介绍了如何用Java自定义实现一个顺序表类,包括插入、删除、获取数据元素、求数据个数等功能,并对顺序表进行了测试,最后还提及了Java中自带的顺序表实现类ArrayList。
9 0
|
2月前
|
机器学习/深度学习 人工智能 算法
【人工智能】线性回归模型:数据结构、算法详解与人工智能应用,附代码实现
线性回归是一种预测性建模技术,它研究的是因变量(目标)和自变量(特征)之间的关系。这种关系可以表示为一个线性方程,其中因变量是自变量的线性组合。
57 2
|
3月前
|
存储 算法 索引
算法与数据结构
算法与数据结构
38 8
|
3月前
|
机器学习/深度学习 存储 算法
【数据结构】算法的复杂度
算法的时间复杂度和空间复杂度
58 1
【数据结构】算法的复杂度
|
2月前
|
算法
【初阶数据结构篇】二叉树算法题
二叉树是否对称,即左右子树是否对称.
20 0