当前位置: 首页 > wzjs >正文

宿松县住房和城乡建设局网站郑州安卓app开发

宿松县住房和城乡建设局网站,郑州安卓app开发,wordpress id重置密码,中山专业外贸网站开发理解递归 一、递归的特征 1.执行范围不断缩小 递归类似数学里的递推,设计递归就是努力寻找数学里的递推公式,例如阶乘的递推公式就是f()n*f(n-1),很明显一定是要触底之后才能反弹。再比如斐波那契数列的递归公式为f(n)f(n-1)f(n-2),n也在不断缩小。这条…

              理解递归

一、递归的特征

1.执行范围不断缩小

递归类似数学里的递推,设计递归就是努力寻找数学里的递推公式,例如阶乘的递推公式就是f()=n*f(n-1),很明显一定是要触底之后才能反弹。再比如斐波那契数列的递归公式为f(n)=f(n-1)+f(n-2),n也在不断缩小。这条规律可以辅助我们检查自己写的递推公式对不对。

2.终止条件在递归调用的前面

递归之后可能还有终止条件,但是在执行递归之前,一定会有一个终止条件。这一条也可以帮助我们检查自己写的算法对不对。
如果递归之前没有终止条件,递归就会一直进行下去。

二、写递归

第一步、从小到大递归

可以从n==1开始考虑递归关系,然后让n逐渐增大,判断递归关系是否成立。在算法里,我们写递归一般不需要证明,先选几个较小的值验一下,再选择几个比较大的验一下即可。

第二步、分情况讨论,明确结束条件

我们说过递归里终止条件一定是靠前的,而大部分递归的终止条件不过是最小开始触底反弹时的几种情
况。
对于阶乘,当n=1时你就应该知道f(1)=1,也就是下面这样子:
截屏2023-12-02 13.17.30.png
有时候需要考虑的终止条件不止一个,例如斐波那契数列的递推公式f(n)=f(n-1)+f(n-2)里,如果n=2时会出现(2)=f(1)+f(0),很明显这里是没有f(0)的,所以我们要将==2也给限制住,所以结束条件是这样的:
截屏2023-12-02 13.19.06.png
有些情况不一定是触底才开始反弹,而是达到某种要求就要停止,这样需要考虑的情况会比较多。解决这类问题最直接的方式就是枚举,将可能的情况列举一下,再逐步优化。
确定终止条件对于递归至关重要,后面很多题目会花很大的篇幅来分析怎么判断终止条件,而一旦判断完毕,递推关系也就水到渠成了。

第三步、组合出完整方法

将递推公式和终止条件组合起来,变成完整的方法。
递归经常能看到很多骚操作代码,不要迷信这些,先分情况逐个先写出来,之后再看能否精简优化,不要步子太大。

三、看懂递归

以f(4)阶乘为例
截屏2023-12-02 13.47.23.png

http://www.dtcms.com/wzjs/783965.html

相关文章:

  • 明会红网站企业员工信息管理系统
  • 做个简单的导航网站如何给网站做优化代码
  • 建站广告赚钱wordpress自动发布模块
  • 高效网站建设咨询深圳网站建_企业网站设计定制
  • 做品牌的人常用的网站返利网网站建设
  • 龙岩网站设计一般要多久arvixe如何做网站
  • 西宁网站建设官网十大博物馆展陈设计公司
  • 网站制作佛山淘宝内部优惠券网站怎样做的
  • 佛山网站建设专业现状聚财的公司名字大全
  • android网站客户端开发抖音代运营电话话术
  • 网站服务器安全部署深圳筑造建设有限公司网站
  • 福田区住房和建设局官方网站营销公司
  • 中山市建设局安全监督站网站网络运维和网站开发
  • 做网站 赚广告费电子商务网站开发意义
  • 免费网站重生做军嫂软件库破解版软件合集
  • 郑州网站推广哪家专业网站iis7.5配置
  • 国内网站备案制作作业平台网站的设计
  • 2018年期刊网站建设调查苏州建厂
  • 自己做视频网站如何接广告个人业余做网站怎么弄
  • 免费注册qq号网站龙岩网页制作
  • 网站无法添加图片网站建设培训报名
  • 广州网站开发 细致广州亦客网络网站建设合同有法律效益吗
  • 网站上的链接怎么做实验楼编程网站
  • html做的网站排版导致乱码专题网站开发工具有哪些
  • 代理商加盟网站如何重装一下wordpress
  • 做网站在线支付系统多少钱?uniapp跳转内部页面
  • 哪里可以免费申请空间 注册域名 申请网站网站怎么弄模板
  • 滨江网站建设制作wordpress影视主题带采集
  • 网站设计需求文档范例网站建设带有注册账号
  • 中学网站建设方案十堰哪家网站制作公司技术好