c语言斐波那契数列_python数据结构与算法——递归方法|斐波那契数列

python中定义函数功能的重要作用:

将复杂的计算过程封装为一个函数存储起来,就可以避免写重复的代码。再次需要该计算的时候只需调用即可。

一,递归方法:


递归方法为:将问题一步步分解,直到得到可以解决的简单问题。

通常涉及直接或间接条用自身:

例如计算列表(1,3,5,7,9,13)中各元素的和。


10595dfc9b3aa89a16bcd8102ee4077d.gif

直接或间接调用sum()函数自身:

python实现如下:

In[1]

def 

Out[2]:

38

斐波那契数列简介:


斐波那契数列是最常见的一道面试题,又称‘兔子数列/黄金分割数列’。

特性一:

任一个数都是前两个数之和。

例如:

d2ada00e2766d1d9aa1cb096c5cac2b0.gif

因此第一种计算斐波那契数列的方法,即让数字序列的最后两个元素相加,得到新的数字并插入数列结尾。

特性二:

在极限条件下,相邻两个元素的商等于一个常数。即


1894ba379cdb2105ac70b97abc26626c.gif

第一种:

因此我们可以通过设置一个数组。

a = [0,1]

下一个要插入的数据就为“a【-1】+a【-2】”。

a

继续循环。循环y次就得到了y个新数字。

最后所得到的斐波那契数列中数字的个数为 n = y + 2 。

可以根据用户想要的斐波那契数字的个数n来定义循环次数y。

y = n - 2

输入【1】:

def 

输入【2】:

fibs1

输出【2】:

[

第二种:

提前定义好数组中元素的个数,再依次设定每个值为前两个数的和。

输入【1】:

def 

输入【2】:

fibs2

输出【2】:

[

两种方法运行时间对比:

输入【1】:

%

输出【1】:

26.2 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值