use*_*602 2 arrays algorithm numbers sequence
我有很多斐波那契数,如果我想确定两个斐波那契数是否相邻,一个基本方法如下:
在第一步和第二步中,可能需要通过使用访问数组来进行许多比较以获得正确的索引.
在第三步中,它需要一次减法和一次绝对操作.
我想知道是否存在另一种方法来快速确定斐波纳契数的邻接性.
我不关心这个问题是否可以通过数学方法或任何黑客技术解决.
如果有人有任何想法,请告诉我.非常感谢!
无需找到两个数字的索引.
鉴于这两个数字属于Fibonacci系列,如果它们的差异大于min.其中有两个不相邻的数字.其他明智的他们是.
因为Fibonacci系列遵循以下规则:
F(n) = F(n-1) + F(n-2) where F(n)>F(n-1)>F(n-2).
So F(n) - F(n-1) = F(n-2) ,
=> Diff(n,n-1) < F(n-1) < F(n-k) for k >= 1
Run Code Online (Sandbox Code Playgroud)
两个相邻的斐波那契数之间的差异总是小于其中的最小数.
注意:仅当数字属于Fibonacci系列时才会保留.