Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >动态规划的楼层算法

动态规划的楼层算法

作者头像
sunsky
发布于 2020-08-20 01:56:42
发布于 2020-08-20 01:56:42
48900
代码可运行
举报
文章被收录于专栏:sunskysunsky
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
这是一种常用的算法,本人摸索出一个规律:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/usr/local/Cellar/python3/3.5.1/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/wuqj/PycharmProjects/testPy/step.py
1111111122
1111112222
1111122122
1111221122
1111222222
1112211122
1112212222
1112222122
1122111122
1122112222
1122122122
1122221122
1122222222
1221111122
1221112222
1221122122
1221221122
1221222222
1222211122
1222212222
1222222122
2211111122
2211112222
2211122122
2211221122
2211222222
2212211122
2212212222
2212222122
2222111122
2222112222
2222122122
2222221122
2222222222
10层阶梯,每次最多2个台阶,一共有55种走法

Process finished with exit code 0

我总结了斐波那契数列算法分析的规律, 用python写了一个,希望对大家有帮助。

图:

简单说,就是斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=1,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

递推公式

斐波那契数列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...

如果设F(n)为该数列的第n项(n∈N*),那么这句话可以写成如下形式::F(n)=F(n-1)+F(n-2)

显然这是一个线性递推数列。

另外斐波那契数列在实际工作中应该用的很少,尤其是当数据n很大的时候(例如:1000000000),所以综合考虑基本普通的非递归O(n)方法就很好了,没有必要用矩阵乘法。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-02-27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
《JavaSE-习题篇二》之七个题目,十六张图,让你不惧递归。
学习方法后,我们来学习一种特殊调用方法的方式,即递归。本篇文章将介绍什么是递归,以及递归的使用规则和注意事项,最后通过几道经典的题目来加深对递归的理解。
用户10517932
2023/10/07
2200
《JavaSE-习题篇二》之七个题目,十六张图,让你不惧递归。
数据结构与算法-斐波那契数列
简介 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963年起出版了以《斐波纳契
cwl_java
2019/10/26
6220
Python第二十三课:递归斐波那契
斐波那契(fibonacci) 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。
红芽
2020/08/19
6630
我用 Python 面向对象做算法题,她说要先给兔子找上对象
休假回来发现自己在刷题小组进度滞后,昨晚想着刷几道题赶赶进度,其中有一道还挺有意思:
TTTEED
2020/07/09
4710
Python学习笔记1——斐波那契数列
这是一个高中同学问我的问题,本来是用C来写的,正好正在学Python,就用Python重写了一遍当作练习。 下面是题目要求: 一道很简单的题目,但有些细节还是要注意的,我第一次写的代码在细节上就不是很完美。 首先来看看什么是Fibonacci数列。 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……
企鹅号小编
2018/01/23
1.3K0
Python学习笔记1——斐波那契数列
python中使用递归实现斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n – 1)+F(n – 2)(n ≥ 2,n ∈ N)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从 1963 年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。*
全栈程序员站长
2022/07/04
8270
python中使用递归实现斐波那契数列
斐波那契数列 -- C/C++ 实现
斐波那契数列有一个规律,斐波那契数列的前一项加上它的后一项等于下一项。因此,使用递推的算法可以很容易实现,即F(n)=F(n - 1)+F(n - 2)。
Skykguj
2022/09/09
5960
使用Java打印斐波那契数列的三种方法
性能类型:https://blog.csdn.net/acecandy/article/details/83864763
阮键
2020/06/18
2.1K0
剑指Offer(六)--斐波那契数列
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。n<=39
秦怀杂货店
2022/02/15
1700
剑指Offer(六)--斐波那契数列
斐波那契数列的四种实现
孔乙己自己知道不能和他们谈天,便只好向 Intern 说话。有一回对我说道,“你写过代码么?”我略略点一点头。他说,“写过代码,……我便考你一考。斐波那契数列的输出,怎样实现?”我想,讨饭一样的人,也配考我么?便回过脸去,不再理会。孔乙己等了许久,很恳切的说道,“不能写罢?……我教给你,记着!这些代码应该记着。将来做 Leader 的时候,开发项目要用。”我暗想我和 Leader 的等级还很远呢,而且我们 Leader 也从不在项目里写斐波那契;又好笑,又不耐烦,懒懒的答他道,“谁要你教,不是递归么?”孔乙己显出极高兴的样子,将两个指头的长指甲敲着键盘,点头说,“对呀对呀!……斐波那契有四样写法,你知道么?”我愈不耐烦了,努着嘴走远。孔乙己刚在命令行打开 Vim,想在里面写代码,见我毫不热心,便又叹一口气,显出极惋惜的样子。
Crossin先生
2020/02/21
7260
go 学习笔记之10 分钟简要理解 go 语言闭包技术
闭包是主流编程语言中的一种通用技术,常常和函数式编程进行强强联合,本文主要是介绍 Go 语言中什么是闭包以及怎么理解闭包.
雪之梦技术驿站
2019/10/01
4600
用递归法计算斐波那契数列的第n项
斐波纳契数列(FibonacciSequence)又称黄金分割数列,指的是这样一个数列:1、1、2C/C++
Java架构师必看
2021/03/22
9420
前端算法题目解析
前几天逛 github 的时候看到一些前端的算法题,自己做了一遍发现还挺有意思的,因此整理了一下收录 daily-question 的 algorithm 文件夹中,后续会继续增加,本文分享我整理的十个算法题目。
小皮咖
2020/01/03
6380
C++实现斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)
week
2018/08/24
3260
《javascript数据结构和算法》读书笔记(2):队列
队列和栈非常相似。但是使用的是FIFO(First In First Out,先进先出)原则。在尾部添加元素,在顶部移除元素。
一粒小麦
2019/07/18
4280
《javascript数据结构和算法》读书笔记(2):队列
初入算法(2)—— 进入算法世界
本章将会继续在初入算法(1)——进入算法世界 的基础上继续通过趣学算法进行算法的学习。
网络豆
2022/11/20
3120
初入算法(2)—— 进入算法世界
用js实现斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”。 斐波那契数列指的是这样一个数列:
程序媛夏天
2024/03/15
970
Python基础面试,看这篇文章画重点吧
一直想写一些更加基础的文章,但是总是想不到好的点子,最近到了就业季,一大堆学生面临就业了,正好,从Python的面试题出发,分析和解答一些常见的面试题,并且总结一些文字。
py3study
2020/01/15
4570
Python如何实现斐波那契数列?
小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。
程序员小猿
2021/01/19
3850
如何写出高性能Python之缓存的应用?
  能看到这篇文章的同学,应该都对缓存这个概念不陌生,CPU中也有一级缓存、二级缓存和三级缓存的概念。缓存可以解决哪些问题?我们直接把网上的一段话放上来:
猫叔Rex
2021/01/29
5320
相关推荐
《JavaSE-习题篇二》之七个题目,十六张图,让你不惧递归。
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验