文档声明:
以下资料均属于本人在学习过程中产出的学习笔记,如果错误或者遗漏之处,请多多指正。并且该文档在后期会随着学习的深入不断补充完善。


资料仅供学习交流使用。
作者:Aliven888

1、简述

  程序设计的关键就是算法,算法简单来说就是程序设计时问题解题步骤或者数据数据的流程。这里我们将介绍以下几种常用的算法:迭代法、穷举法、递推法、递归发、回溯法、贪婪法、查找算法、排序算法

本章节主要介绍递推法

2、递推法

递推法是通过数学推导,将复杂的运算分解成若干个重复的简单运算,而每次简单运算的结果都将作为下一次简单运算的输入,这样便能逐级计算出最终结果。

优点:

  算法简单,容易理解。

代码实例:

//已知:斐波那契(Fibonacci)数列为:f(n) = 1,1,2,3,5,8,13,21,34.... fn   求第 n 个数的值
//即:每个数都等于它前面两个数的和。
void fun(int n = 9)
{if ((1 == n) || (2 == n)){cout << "第" << n << "个数是:1" << endl;}if (n >= 3){int f1 = 1;int f2 = 1;int f3 = 2;for (size_t i = 3; i <= n; i++){f3 = f1 + f2;f1 = f2;f2 = f3;}cout << "第" << n << "个数是:" << f3 << endl;}
}

运行结果:

C/C++程序设计常用算法——递推法相关推荐

  1. 程序设计典型算法之递推法

    程序设计典型算法之递推法 一时兴起,刚吃完晚饭,突然又想写点东西,可能太久没有写东西了吧! 问题:小猴吃桃问题.小猴在一天内摘了若干桃子,当天吃掉一半多一个:第二天吃掉剩下的一半桃子多一个:以后每天都 ...

  2. 常见算法思想2:递推法

    递推法 递推算法犹如稳重的有经验的老将,使用"稳扎稳打"的策略,不断利用已有的信息推导出新的东西. 在日常应用中有如下两种递推算法: (1)顺推法:从已知条件出发,逐步推算出要解决 ...

  3. 算法笔记方法论3 递推法与递归法

    你站在桥上看风景看风景的人在楼上看你明月装饰了你的窗子你装饰了别人的梦--卞之琳 递推算法的特点 一个问题的求解需要大量重复计算,在已知的条件和所求问题之间总存在着某种相互联系的关系,在计算时,我们需 ...

  4. 几个常见的简单的算法(暴力法,递推法,枚举法,递归法,分治法,贪心法,回溯法)

    最近在学习算法相关知识. 通过买的视频教程了解到了一些简单的算法,为了加深感悟,同时也为了理解,将这几个常见的算法的定义进行记录. 算法是程序的灵魂,也可以认为是程序最重要的部分. 在通过算法解决问题 ...

  5. 算法设计 之 递推法

    2019独角兽企业重金招聘Python工程师标准>>> 递推法就是根据已知条件,分析推导出问题中的联系,然后一步一步进行推倒直至得到结果. 根据具体问题我们需要选择是正推还是逆推来解 ...

  6. 八大算法思想二——递推法

    聪明一点的递推法 递推法:犹如稳重的老将,使用的就是"稳扎稳打"的策略,不断利用现有的信息推导出新的东西,在日常使用中有两种方法: 1,顺推法:从已知的条件出发,逐步推导得到解决问 ...

  7. 递推法 c语言,递推法

    递推算法 给定一个数的序列H0,H1,-,Hn,-若存在整数n0,使当n>n0时,可以用等号(或大于号.小于号)将Hn与其前面的某些项Hi(0 递推算法是一种简单的算法,即通过已知条件,利用特定 ...

  8. matlab如何仿真递推型dft算法,递推dft算法

    0.7 0.8 0.9 1 0.6 0.7 0.8 0.9 1 伯格(Burg)递推算法 L-D算法缺点: 在计算相关函数估计时,对N个观测数据以 外的数据作零的假设,故谱估计误差较...... 第3 ...

  9. 随机信号处理AR模型Yule_Walker方程直接解法和Levinson_Durbin递推法的MATLAB与Python实现

    AR模型 AR模型的系统函数H(z)可以表示为: 我们的目的就是要求解系统函数的参数a和增益G. Yule_Walker方程 矩阵形式 根据生成的矩阵,可以解出p个参数 ,再根据自相关函数,可以求出系 ...

最新文章

  1. [转贴]2006十大经典语句
  2. ASP.NET 3.5之屠龙刀
  3. 从请求管道深入剖析HttpModule的实现机制,有图有真相
  4. map has no len python3
  5. oracle exp执行失败,Oracle EXP-EXP-00091的错误原因及处理方法
  6. Angular路由开发的一个实际例子
  7. 后端返回页面ajax的处理
  8. 重装Microsoft .NET Framework 4.0
  9. java核心基础 --- 基本数据类型
  10. jq点击更多收起效果
  11. 使用Smart3D进行倾斜摄影实景建模详细教程
  12. Windows10家庭版完美修改系统用户名
  13. LOGO以及手绘签名完美导入CAD
  14. 买iPhone担心买到翻新机?教你一招,轻松鉴别各个版本
  15. java表白_java实现七夕表白神器
  16. idea 修改项目名称的方法
  17. 劳资蜀道山!6个高质量免费电子书网站!我看谁还不知道
  18. E500 键盘粘键,倒水滑落键盘
  19. 【总结】python sklearn模型中random_state参数的意义
  20. 2022电工(中级)操作证考试题库及模拟考试

热门文章

  1. python array太慢_Python-Masked Numpy数组比普通numpy数组慢得多
  2. 莫利定理:UVa 11178 Morley's Theorem
  3. 文件管理 廉价冗余磁盘阵列
  4. java发布WCS服务到GeoServer服务器并解析XML生成可下载的WCS服务数据url(2022.2.14)
  5. 也谈析构:析构函数何时被调用
  6. 如何处理因为支付成功后因延迟回调而订单被取消
  7. StringUtils中isBlank和isEmpty的区别
  8. 逻辑推理阅读理解任务及方法
  9. 使用C#实现基于UDP的通信 基本原理
  10. 【Java作业】模拟停车场(超详细!)