斐波那契数 整理
内容主要来(chao)自《具体数学(第二版)》。
背景:
看了几节课《具体数学》,记一下吧不然就真废了。。
应该没什么用,不过混个眼熟吧说不定还能见到Fibonacci的题。。写些这个我也是挺闲的。
咕了→_→工程量太浩大
斯特林数 STIRLING NUMBERS
第二类斯特林数
我们用{nk}记第二类斯特林数。
第一类斯特林数
我们用[nk]记第一类斯特林数。
斐波那契数 FIBONACCI NUMBERS
1.卡西尼恒等式
一个包含了形如fn±k(对于k的较小值)的斐波那契数的多项式公式可以变换成一个只包含Fn和Fn+1的公式,因为我们可以通过法则Fm=Fm+2−Fm+1来用更高次的斐波那契数表示Fm(当m<n时),且可以通过
来用较低次的斐波那契数代替Fm(当m>n+1时)。
例如,替换卡西尼恒等式中的某个F,从而得到形如:
的卡西尼恒等式。
而(5)与(Fn+1+Fn)Fn−F2n+1=(−1)n+1是相同的,而后者与(4)相同。因此当卡西尼(n)为真当且仅当卡西尼(n+1)为真,于是根据归纳法,方程(1)对所有n成立。
严格地说,除非m≥2,否则不能应用化简公式(3),因为我们没有对取负值的n定义过Fn。如果我们消除掉这个边界条件并利用(2)(3)对负指标定义斐波那契数,那么许多问题的处理就会变得更加容易。如F−1=F1−F0=1,F−2=F0−F−1=−1。且由归纳法有
当用这种方式推广斐波那契数列时,卡西尼恒等式(1)对所有整数n都成立,而不仅仅对n>0成立。
利用(2)(3)及归纳法还可以得出,
它对于所有整数k和n(正负以及0)都成立。
如果在(7)中取k=n,就有
从而F2n是Fn的倍数。类似地有
而且我们可以断言,F3n也是Fn的倍数。
2.斐波那契表示法
斐波那契数的一个最重要的性质是它们可以给出一种表示整数的特别方法。我们记
那么每个正整数都有唯一的表示形式
这是Zeckendorf定理。如100万的表示:
每次选取Fk1是≤n的最大的斐波那契数,然后选取Fk2是≤n−Fk1的最大的斐波那契数,这样一直下去总可以得到这样的表达式。
任何有唯一性的表示系统都是一个数系,这样Zeckendor定理就引导出斐波那契数系。我们可以将任何非负整数n用0和1的一个序列表示,记
这个数系有点像二进制记号,除了这里从来不会出现两个连续的1以外。几个例子:
前面的100万斐波那契表示可以与它的二进制表示219+218+217+216+214+29+26作比较:
斐波那契表示法需要更多的位数,因为不允许有接连出现的1,但是这两个表示是类似的。
加1进位有两种情形,可能要进位2次(保证没有相邻的1),我懒得写了。。
3.另一个公式
gcd
其它
Pisano 周期
斐波那契数列对p取模的结果存在循环节,循环节长度称为 Pisano 周期。
前9模数的周期为:1 3 8 6 20 24 16 12 24。
模p的情况下,如果a_{n-1}=0,a_n=1,那么n就是p的 Pisano 周期/循环节长度。
具体见:https://blog.csdn.net/weixin_43817941/article/details/128770480
别来无恙 你在心上
------------------------------------------------------------------------------------------------------------------------
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· Browser-use 详细介绍&使用文档
· 软件产品开发中常见的10个问题及处理方法