美文网首页程序员
杂谈-递归与尾递归

杂谈-递归与尾递归

作者: 竹林晓圣 | 来源:发表于2017-12-18 00:23 被阅读13次

斐波那契数列之递归与尾递归实现

1,1,2,3,5,8,13,21 从第三个数开始每个数都是前两个数的和。

def fun_1(n):
if n < 3:
return 1
else:
# 从头往尾递归 会产生像二叉树一样指数展开
return fun_1(n-2)+fun_1(n-1)

def fun(n, i, j):
if n < 3:
return j
else:
# 尾递归 递归次数为线性
# print(n, i, j)
return fun(n-1, j, j+i)

if name == 'main':
n = int(input('请输入要的斐波那契数列n(33以上可以看到明显效果): '))

print('This is fun')
print(fun(n, 1, 1))

print('This is fun_1')
print(fun_1(n))

相关文章

  • 杂谈-递归与尾递归

    斐波那契数列之递归与尾递归实现 1,1,2,3,5,8,13,21 从第三个数开始每个数都是前两个数的和。 def...

  • 递归与尾递归

    编程很复杂,编程也很简单。简单的逻辑,通过代码组织,就可以变成复杂程序或者系统。以前学物理的时候,老师就说考试的物...

  • Kotlin语言(九):特性

    1、尾递归优化 尾递归:函数在调用自己之后没有再执行其他任何操作就是尾递归 尾递归优化的原理就是将递归转换成迭代,...

  • 斐波那契数列与Python的尾递归蹦床 连载【2】

    ……续上回 斐波那契数列与Python的尾递归蹦床连载【1】 4. 生成器式尾递归解法 前面尾递归是用的retur...

  • 从示例逐渐理解Scala尾递归

    1.递归与尾递归 1.1 递归 1.1.1 递归定义 递归大家都不陌生,一个函数直接或间接的调用它自己本身,就是递...

  • 线性递归与尾递归

  • 递归&尾递归

    调用栈的特点,先进后出, FILO, 场景还原。 递归 有栈溢出的可能 stack overflow 尾递归 编译...

  • Python开启尾递归优化!

    原文出处: neo1218 一般递归与尾递归 一般递归 执行: 可以看到, 一般递归, 每一级递归都需要调用函数,...

  • C++ 递归算法

    递归算法,尾递归算法求阶乘!

  • 递归调用优化

    尾递归优化 函数调用自身,称为递归。如果尾调用自身,就称为尾递归。 递归非常耗费内存,因为需要同时保存成千上百个调...

网友评论

    本文标题:杂谈-递归与尾递归

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