范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

07算法入门教程递归算法

  1. 前言
  本节内容是递归算法系列之一:递归的介绍,主要介绍了递归的定义,选择了数学归纳法这一数学模型帮助大家可以更好的理解递归的概念,然后明确了一个递归算法必须要具备的三要素,最后说明了一下哪些问题适合应用递归算法求解分析。 2. 什么是递归?
  递归(Recursion),是计算机科学与技术领域中一种常见的算法思想。
  在数学和计算机领域中,递归主要是指在函数的定义中使用函数自身的方法。顾名思义,递归主要包含两个意思, 递 和 归 ,这个是递归思想的精华所在。递归就是有去(递去)有回(归来)。"有去" 是指递归问题可以分解成若干个规模较小、与原问题形式相同的子问题,这些子问题可以和原问题用相同的方法来求解。"有回" 是指这些问题的演化过程是一个从大到小,并且最终会有一个明确的终点,一旦达到终点,就可以从终点原路返回,解决原问题。
  更为直接的说法就是:递归的基本思想就是把大问题转化为相似的小问题解决。特别是在程序中的函数实现时,大问题的解决方案和小问题是一模一样的,所以就产生解决一个问题会调用函数本身的情况,这个也是递归的定义。 3. 用数学归纳法理解递归思想
  很多时候,大家都在思考递归在数学上面应该如何表示了,毕竟对于数学的简单理解比起我们直接写代码起来还是要简单很多的。观察递归,我们会很容易发现递归的数学模型类似于 数学归纳法 ,这个在高中的数列里面就已经开始应用了。数学归纳法常见的描述如下 最简单和常见的数学归纳法是证明当  n  等于任意一个自然数时某命题成立。证明分下面两步:
  证明当  n = 1 时命题成立。
  假设  n = m  时命题成立,那么可以  推导 出在  n = m +1 时命题也成立。( m  代表任意自然数)
  数学归纳法适用于将需要解决的原问题转换为解决他的子问题,而其中的子问题又可以变成子问题的子问题,而且这些问题都是同一个模型,可以用相同的处理逻辑归纳处理。当然有一个是例外的,就是归纳结束的那一个处理方法不能适用于其他的归纳处理项。递归同样的是将大的问题分解成小问题处理,然后会有一个递归的终止条件,满足终止条件之后开始回归。
  数学里面有一个很有名的斐波那契数列,我们在编程求解斐波那契数列的时候就会用到递归的思想,在后续的内部中会具体讲到。 4. 递归的三要素
  在明确递归的定义及数学模型之后,我们需要掌握递归的三要素: 递归终止条件; 递归终止时候的处理方法; 递归中重复的逻辑提取,缩小问题规模。 4.1 递归终止条件
  按照之前的说明,递归应该是有去有回的,这样递归就必须有一个明确的分界点,递归可以在什么时候结束。程序一旦达到这个临界点,就不用继续递归重复下去了。简单来说,递归的终止条件就是为了防止出现无限递归的情况。 4.2 递归终止时的处理方法
  如前面说到递归需要一个终止条件一样,在达到递归的终止条件时,需要有一个对应终止条件的程序处理方法。一般而言,在达到递归的终止条件时,对应的问题都是很容易解决的,可以快速的给出问题的解决方案。 4.3 递归中重复的逻辑提取,缩小问题规模
  递归的本质上还是要将一个大的问题分解成各个逻辑相同的小问题,所以递归过程中一个重要的步骤就是提取递归中重复的逻辑规则,以便利用相同的处理方式进行处理。
  按照以上递归的三要素,递归程序的一般处理可以总结成下面的伪代码: recursion(big_problem){    if (end_condition){  //满足递归的终止条件        solve_end_condition;  //处理终止条件下的逻辑        end;  //递归结束    }else {        recursion(small_problem);  //递归中重复的逻辑提取,缩小问题规模    } } 5. 递归的应用场景
  在日常的生活学习中,递归算法一般可以用来解决很多实际问题。回顾一下我们之前学习的排序算法,其中快速排序利用了递归的思想进行解决。总而言之,递归在很多场景中都有应用。
  比如说一个常见的对于操作系统里面删除指定路径下的文件夹里内容以及子文件夹里面内容的操作,就可以利用递归思想完成。这个时候递归的终止条件就是判断当前路径是文件,就可以直接删除;发现当前路径是文件夹,则递归调用方法,进入文件夹内部删除里面的文件内容。
  总而言之,递归问题在现实学习科研中经常会遇到,这是一种解决问题的思路与方法,将大问题拆分成小问题,然后求解小问题之后回归归纳,得出整个问题的求解结果。 6. 小结
  本节主要介绍了递归的定义及基本概念,在学完本节课程之后,需要明白递归的基础逻辑是什么样的,如何自己去设计一个递归算法,在设计一个递归算法时需要考虑到哪些问题,以及我们日常中常见的递归问题。

微信支付或取消?我们账上的余额会清零吗?准确答案来了最近一直有人在讨论国家关于微信个人收款码不允许再进行营业性收入的政策,有的人觉得国家终于下定决心开始监管电子支付了,不管介入的地方是否有利于老百姓的日常生活,最起码有了来自官方的监鸿蒙OS麒麟99040W快充,现已跌至1869元,华为5G旗舰不贵了即使是资深粉丝,也很难熟悉一个大型手机厂商旗下的所有机型,因为大型手机厂商发布手机的数量多,而且许多品牌旗下不仅有高端旗舰,也有很多中低档手机,随着时间的积累,总会有一些手机会被忽强制下载App是霸王行径2月11日,有网友在人民网领导留言板以建议对部分网站强制要求下载App的行为进行整治为题留言称,现在用手机浏览器浏览内容时,一些应用常常会弹出来推荐App的窗口必须下载App才能浏3月1日后个人收款码停用?多方回应2月22日晚间,中国支付清算协会发布了中国支付清算协会关于优化条码支付服务的公告(以下简称公告)。公告指出,新设个人经营收款码,用户可自由选择使用。此外,现行个人收款码不关闭不停用三方物流的配送管理系统该怎样搭建?三方物流配送系统主要由三个主体构成,供应商,也就是给予运单,要发货配送的一方,承运商,通俗的说可以是从事具体车辆运营承担运输任务的车主,以及负责业务调配运转的物流公司,也就是三方物农业背后的早期投资者高瓴为何看好农业科技?农业作为历史最为悠久的行业,在过去互联网从起步到高速发展的数十年里,并未充分享受到信息化和新技术带来的红利。但近来,数字化智能化技术的发展及其引发的改变在农业领域的上下游正在不断地全场景刷牙清洁不伤牙,扉乐MagorPro电动牙刷上手体验日常生活中与每个人息息相关的生活小物件,大家每天早晚都会使用刷牙产品电动牙刷。随着电动牙刷产品的不断推新升级,相信在现在年轻群体里面,几乎绝大多数都换上了电动牙刷。目前市面上大多数十大创新之首!欲戴王冠,山东科技创新何以承重前行强力保障投入,山东省级科创发展资金再增10至145亿元,力争带动全社会研发经费投入增长10以上启动省基础研究十年行动,实施学科尖兵梯队培育计划强化重大平台布局,对符合条件的新升级的在互联网时代,APP之间如何安全传输文件?随着App移动应用的广泛应用及移动开发技术的飞速发展,移动应用的安全也越来越被重视在App服务端渗透中,我们在抓包时经常会发现App在数据传输过程中做了加密,以防止数据被查看或被篡证监会核发立航科技康冠科技IPO批文中国经济网北京2月24日讯中国证监会网站今日公布关于核准成都立航科技股份有限公司深圳市康冠科技股份有限公司首次公开发行股票的批复。中国证监会表示,深圳市康冠科技股份有限公司关于首次阿里面试官内部题库!阿里发布2022年Java岗(正式版)面试题阿里巴巴2022年Java架构师岗面试题(正式版)这不马上就是金三银四的面试跳槽季了嘛,马士兵老师也是通过一些小手段为大家拿到了一份阿里巴巴2022年Java架构师岗面试题(正式版
任正非再次转发华为到该炸掉研发金字塔的时候了,不研发了?华为到了历史上最危险的时刻,上半年华为实现销售收入3204亿元人民币,净利润率为9。8。但消费者业务受到明显影响,今年上半年,华为消费者业务收入为1357亿元,同比下降46。95。苹果申请ApplePark图形商标还可通过AR方式参观总部园区据PatentlyApple报道,ApplePark是苹果公司的企业总部,位于加利福尼亚州库比蒂诺。它于2017年4月向员工开放。目前,苹果公司已经为苹果公园申请了具象商标。有趣的跨境电商与e共舞,买卖全球为经济注入新活力日前,国务院批复同意在鄂尔多斯等27个城市和地区设立跨境电子商务综合试验区。这是该试验区近7年时间里的第6次扩围,范围已扩至全国132个城市和地区。从沿海到内陆,跨境电子商务综合试剥削劳动力怎么看?私有化的产物,有私有化就有剥削,这是在所难免的。只有取剔私有化,才能没有剥削。只要社会上存在着私人占有生产资料和雇工的现象,剥削劳动力那是一定的,否则,私人资本投资目的何在?他就是网友并夕夕上买了iPhone13,会翻车吗?有网友在并夕夕上买了百亿补贴的iPhone13,但是在网上看到很多并夕夕翻车的案例,想让我帮忙看看他有没有翻车。用这台iPhone的序列号进行gsx验机可以发现,这是一台128g的发达的国家,越不扶持电商?看到路边的街道就清楚了每个时代在发展过程中,都有新生事物的出现,对于现代社会来说,互联网的诞生与普及无疑是顺应时代潮流。虽然说互联网是一把双刃剑,但是不管是从国家层面看,还是从个人出发,互联网优点远远大滚滚而来的电商,让我手足无措年,悄然的过去了。突然发现,崛起的电商,几乎覆盖了我们生活的方方面面!是薇娅和辛巴的影响力?还是时代的大势所趋?从衣食住行到医疗保健,从学习教育到婚姻家庭,从社会综合服务到男女感情如何看待iPhone8玻璃背板?苹果几大新品的出现,一直被吐槽,比如说iphone7与iphone8外形变化不大,升级的IOS11后更加费电。不知道苹果看到这连连的吐槽声作何感想呢?买iphone不是最费钱的,修2022年最佳健身手环和手表Fitbitcharge5当您听到健身追踪器一词时,Fitbit可能是您想到的第一家公司它的智能手表和健身手环已成为行业的黄金标准,这是有充分理由的。Fitbit的新Charge5Django中model可选参数介绍Django提供了一种给类属性定义可选参数的方法,通过这些参数,可以对类属性进行一些限制或者设置默认值。例如我们可以使用defaultvalue的可选参数来保证每次在数据库中创建该地球内部是什么?简单来说,地球内部就是岩石,越往里越是高温高压,甚至是软流层或者液态。具体来说,地球内部分有很多层,这就是常说的圈层结构。著名地球物理学家莫霍洛维奇和古登堡分别通过研究地震波发现了