递归是什么(Recursive)

作者: 杨斌_1024 | 来源:发表于2020-05-06 18:43 被阅读0次

概述

递归是一种算法,递归是通过调用自己本身达到最终操作的。它与迭代不同,递归是反复调用自己的定义来完成计算操作。

In computer programming, the term recursive describes a function or method that repeatedly calculates a smaller part of itself to arrive at the final result. It is similar to iteration, but instead of repeating a set of operations, a recursive function accomplishes repetition by referring to itself in its own definition.

比如:

我家住在20楼,现在往下找东西,先去19楼,没有,继续去18楼,没有,继续去17楼,没有,去16楼........,一直到1楼)(也有可能到7,8,9楼),得到的结果可能有两种,1.找到了,2.没有找到,到达1楼后不管有没有找到,都会返回,先返回到2楼,然后3楼,最后到20楼。这实际上就是一个递归过程。可以把找东西看做是递归函数,每到一层调用一次找东西(函数),找到了,然后再一次一次返回。

代码 运行结果

递归使用场景和条件

递归的使用场景一般是在同一问题领域内容深层嵌套时使用。

递归的条件是有限的调用自身(有终止条件),每次调用都离结果更近,递归栈应该在物理内存有限范围和栈深有限范围。

递归开发案例

1.在日常开发中会一个表内,存储父子节点数据。如下图,用类来模拟表结构。

表结构 存储两条链路数据

需求:根据传入的id列表查询出,id对应的所有父节点。比如查询11,那么他的父节点就是10,9,8,7。

给出的解决办法

2.使用递归算法打印数字

递归打印数字

GitHub Recursive Code

相关文章

  • 递归是什么(Recursive)

    概述 递归是一种算法,递归是通过调用自己本身达到最终操作的。它与迭代不同,递归是反复调用自己的定义来完成计算操作。...

  • 【 数据结构 & 算法 】—— 回溯、递归、分治(更新中)

    < 思维导图 > 预备知识:递归 ,回溯(★) Recursive function.cpp Recursive ...

  • 以太坊RLP编码原理

    RLP编码是什么   RLP(Recursive Length Prefix,递归的长度前缀)是一种编码规则,主要...

  • FP & Recursive 递归

    FP & Recursive Presentation 是个抛砖引玉,javascript语法 示例 斐波那契数列...

  • 递归(recursion)

    基线条件(base case)&递归条件(recursive case) 递归条件基线条件 堆栈 调用栈 递归调用栈

  • RLP 递归长度前缀

    RLP 递归长度前缀 RLP(recursive length prefix):递归长度前缀。 RLP编码是以太坊...

  • 重复

    递归在自己的定义中调用自己的函数叫做递归函数(Recursive Function)。 尾递归普通的递归调用并不高...

  • 递归

    每个递归函数都有两部分:基线条件(base case) 和 递归条件(recursive case)。递归条件指的...

  • 1.认识Linux

    认识Linux 单词来源r:recursive 递归ls:listmkdir:make directorylo:l...

  • 算法图解-递归

    1. 递归指的是调用自己的函数递归函数有两部分:基线条件(base case)和递归条件(recursive ca...

网友评论

    本文标题:递归是什么(Recursive)

    本文链接:https://www.haomeiwen.com/subject/uqqeghtx.html