递归三要素

确定递归算法的三个要素。每次写递归算法时都基于下面的“三部曲”,可写出正确的递归算法。

(1)确定递归函数的参数和返回值

确定哪些参数在递归过程中需要处理就在递归函数中加上这些参数,并且明确每次递归的返回值是什么,进而确定递归函数的返回类型

(2)确定终止条件

写完递归算法,程序运行的时候经常会遇到栈溢出的错误,原因是没有写终止条件或者终止条件写的不对。操作系统也是用一个栈的结构保存每一层递归的信息的,如果递归没有终止,那么操作系统的内存栈必然会溢出

(3)确定单层递归的逻辑

确定每一层递归需要处理的信息。在这里会重复调用函数本身来实现递归的过程。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 递归的三要素: 1、 确定递归函数的参数和返回值: 确定哪些参数是递归的过程中需要处理的,那么就在递归函数里加上这...
    祁小彬阅读 1,125评论 0 2
  • 链接:https://www.zhihu.com/question/31412436/answer/6838207...
    叫我胖虎大人阅读 2,013评论 0 6
  • 栈与递归 栈还有一个重要应用是在程序设计语言中实现递归。一个直接调用自己或通过一系列的调用语句间接的调用自己的函数...
    Mr_Bluyee阅读 3,582评论 0 1
  • 计算机科学的新学生通常难以理解递归程序设计的概念。递归思想之所以困难,原因在于它非常像是循环推理(circular...
    启明_b56f阅读 7,642评论 0 20
  • 一、递归定义 如果函数中包含了对其自身的调用,该函数就是递归的; 递归(Recursion),在数学与计算机科学中...
    惑也阅读 11,215评论 0 4

友情链接更多精彩内容