从斐波那契数列到0.618_斐波那契数列0,1,1,2,3,5

liftword5个月前 (02-13)技术文章29

事先申明,本文是一篇科普文章,目的是想普及斐波那契数列的概念,提升大众的审美水平以及对这个世界的认识. 大家可以把本文看成网络信息的整合,是一个经过提炼、形象化的版本.

首先,我们介绍下斐波那契与斐波那契数列.

斐波那契(Fibonacci Leonardo,约1170-1250)是意大利著名数学家,他最重要的研究成果是在不定分析和数论方面,他的“斐波那契数列”成为人们热衷研究的问题.

保存至今的斐波那契著作有5部,其中影响最大的是1202年在意大利出版的《算盘书》,《算盘书》中许多有趣的问题中最富成功的问题是著名的“兔子繁殖问题”. 如果每对兔子每月繁殖一对兔子,而兔子在出生后第二个月就有生殖能力,试问一对兔子一年能繁殖多少对兔子?

书中描述有点不太好理解,大家请看下图就一目了然了.

上述数列称为斐波那契数列(Fibonacci Sequence).

不仅兔子的繁衍遵循斐波那契数列,树的分叉也符合这个规律.

还有种子的排列规律,也能找到斐波那契数列中的项.


此外,中国古代的杨辉三角也能找到斐波那契数列:


斐波那契数列另一个典型的存在是斐波那契螺线(Fibonacci Spiral).

斐波那契螺线也称之为黄金螺线(与黄金分割数0.618有关).


画法: 首先,我们画两个单位1的正方形,然后用圆规分别在俩正方形内画四分之一圆弧,再在俩正方形下方画一个单位2的正方形,画四分之一圆弧,依次类推,我们就得到斐波那契螺线. 之所以称之为斐波那契螺线是因为画圆弧的半径依次为1,1,2,3,5,8,13,21,...满足斐波那契数列.

斐波那契螺线的例子非常常见,比方说海螺、树叶排列、气旋云图与星系云图等等.

实际当中从古至今应用斐波那契螺线的例子也很多.下面我举几个例子.

帕提农神庙(建于公元前447-公元前433),高与宽之比符合黄金比例:

达芬奇的蒙娜丽莎构图(达芬奇很喜欢斐波那契数列,大家可以看看著名的达芬奇密码):

喵星人的睡姿:

苹果公司的logo设计:

唐纳德.特朗普的发型(搞笑的老头):

最后,我们还是要提一些数学上的推导,以揭示斐波那契数列与黄金分割数的关系(看不懂的朋友可以自动忽略).

因此我们可以得到斐波那契数列的前项与后项之比会趋近于黄金分割数.

下面我们在Python3中进行简单的检验,代码如下:

10次迭代后的结果:

100次迭代后的结果:

总结一下:斐波那契数列利用1和加法,进行无限制迭代后,能够得到黄金分割数这个最美丽的数字. 我们这个可见的世界源自于1,真是简单、有序而又美丽!

基于斐波那契数列的重要性,1963年美国South Dakota州立大学计算机科学系创立了斐波那契季刊,刊登与斐波那契数列有关的文章,大家有兴趣可以钻研下自己的方向与斐波那契数列的联系.

相关文章

数学之美:神奇的杨辉三角形,比西方早近600年,致敬古代数学家

小朋友们好,大朋友们好!我是猫妹,一名爱上Python编程的小学生。和猫妹学Python,一起趣味学编程。今日主题什么是杨辉三角形?杨辉三角形有什么规律?中国古代数学家杨辉。西方科学家帕斯卡。杨辉三角...

LeetCode算法第118. Pascal's Triangle

技术提高是一个循序渐进的过程,所以我讲的leetcode算法题从最简单的level开始写的,然后˃ 到中级难度,最后到hard难度全部完。目前我选择C语言,Python和Java作为实现语言,因为这三...

100个python小例子(练习题)_python 简单例子

推荐阅读:最全的 NumPy 教程Python 入门必备知识100 个 Python 小例子Python 经典实用练手项目100+ Python 爬虫实战项目怎么自学python,大概要多久?哪些 P...

用Python来实现秦九韶算法_python秦九韶算法例题解析

秦九韶介绍秦九韶是我国古代数学家的杰出代表之一,他与李冶、杨辉、朱世杰并称宋元数学四大家。他的《数书九章》概括了宋元时期中国传统数学的主要成就,尤其是系统总结和发展了高次方程的数值解法与一次同余问题的...