Kotlin尾递归
尾递归优化
- 尾递归就是虚伪的递归,他是一种类似于循环的执行流程
递归字节码
1 | var a = 0 |
字节码如下
1 | public final static a()V |
非递归(tailrec)
1 | tailrec fun b(a: Int) { |
字节码如下
1 | public final static b(I)V |
代码等价于
1 | tailrec fun b(a: Int) { |
类似的斐波那契数列
1 | tailrec fun feiBo(n: Int, a: Int, b: Int): Int { |
等价于
1 | fun feiBo(n: Int, a: Int, b: Int): Int { |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 理想三巡!