鱼C论坛

 找回密码
 立即注册
查看: 3966|回复: 2

斐波那契查找

[复制链接]
发表于 2021-9-7 12:40:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我想问下我看不懂这个画红色怎么找到这个中间值的。斐波那契小甲鱼讲的好模糊。。
678.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-9-7 23:13:34 | 显示全部楼层
栗子解析
数组arr,大小为12,斐波那契数组f,设定大小为10,待查找数字为10
1.首先在f中找到略大于arr大小12的数字,是13,然后把arr的大小扩充为13,末尾填充12
2.然后f[k]=f[k-1]+f[k-2]即13 = 8+5,然后假定将arr划分为两部分,第一部分为前八个元素即{1,2,3,4,5,6,7,8}后一部分为5个元素{9,10,11,12,12}
3.比较第八个元素(栗子中为8)与目标值(10)的,如果第八个元素大于目标值则目标值在第一部分内,而栗子中小于目标值,则目标值在第二部分中,记录第二部分的起点索引,整体大小为5,再带到2步骤中,f[k]=f[k-1]+f[k-2]即5=3+2,依次递归
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-7 23:14:22 | 显示全部楼层
最好结合代码看,能加深理解https://www.cnblogs.com/yysbolg/p/11603605.html
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 03:14

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表