关于 递归 的作用的问题.
首先用我们用 lua 来实现一下递归 : 代码如下.
1 function Recursion(n) 2 3 if(n>=100) 4 then 5 return 100 6 end 7 print(n) 8 i = Recursion(n+1)+n 9 return i 10 end 11 12 print(Recursion(0))
以上就是递归最基本的运用及写法.
问题就在这儿,或许是好久没用的原因,我竟然一直在纠结为什么最后的结果是5050...并且,一度认为我的递归写错了.后来整半天才终于开窍.
这尼玛递归本来就是调用自身来计算某个值的一种算法....
比如上面的,我想算从 0 开始,加到 100.总共的值是多少, 就可以用这种方法.
再比如,我想计算. 从0开始, 只加偶数,加到100,总共的值有多少. 就可以用 " i = n + Recursion(n+2)" 来实现,至于其他的算法自己可以多散发思维.
又或者,我想计算,从0开始,乘到100,总共值有多少, 就用" i = n * Recursion(n+2)" 来实现....