前端之家收集整理的这篇文章主要介绍了
ruby – 什么是递归,它是如何工作的?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有人可以解释什么是完全递归的(以及它如何在Ruby中工作,如果这不是太多要求).我遇到了一个冗长的
代码段,依赖于递归,它使我困惑(我现在失去了,这并不完全相关).
递归
函数/
方法调用自身.对于要终止的递归算法,您需要一个基本情况(例如
函数不递归
调用的条件),并且您还需要确保在每个递归
调用中更接近该基本情况.我们来看一个非常简单的例子:
def countdown(n)
return if n.zero? # base case
puts n
countdown(n-1) # getting closer to base case
end
countdown(5)
5
4
3
2
1
一些问题可以用递归非常优雅地表达,例如,以递归的方式描述了很多数学函数.
原文链接:https://www.f2er.com/ruby/273571.html