递归思想
递归的本质就是二字⇢套娃。
什么被称之为是递归呢⇢在函数里面调用自身函数就被称之为是递归。
套娃实际上就是在函数中再次调用同样的函数。
以上便是递归的核心理念了,当你知道这个不知道这个核心理念有没有完整的刻在你的脑海当中去。
在编程语言当中我们知道-一个函数是可以调用另一个函数的,那么有个特例如下👇
如果函数调用了自己,我们便把函数在运行的时候调用自己的情况叫做是递归。
下面我们用一个简单的例子来进行下说明吧。
编辑
那么我们现在假设分析下f(3)当中的结果到底是什么如下↓
⒈⇢当参数x的值等于③的时候,开始进入这个函数。此时这个函数返回值是 ③ + f(②)
注:把x的值给带入到f()函数当中去,尽管返回值的参数是不一样的。也一样带进去即可。
杰斯⇥那么我们知道③是一个确定的数值,那么f(②)它是一个不确定的值又会等于多少。
⒉⇢当函数的参数为②的时候,它的返回值就是 ② + f(①)
⒊⇢以此类推下去,参数x值为①的时候,函数的返回值就是 ① + f(0)
在上述的代码中我们可以知道没有判断条件,这种调用是永远都不会停止的。所以,我们需要在函数当中加入一个判断语句,决定何时停止调用自己。代码示例如下↓
f(3) = 3 + f(2) = 3 + 2 + f(1) = 3 + 2 + 1 + f(0) = 3 + 2 + 1 + 0 = 6 || 1+2+3=6
想必当你看完上述对递归的讲解,相信你已经大致明白了递归的大致思想了。那么接下来我们就来用递归做一道sum求1+2...100的求和。