《算法设计与分析基础》笔记

http://blog.csdn.net/wangyunyun00/article/details/23464359

差值查找

折半查找这种查找方式,还是有改进空间的,并不一定是折半的!

mid = (low+high)/ 2, 即 mid = low + 1/2 * (high - low);

改进为下面的计算机方案(不知道具体过程):

mid = low + (key - a[low]) / (a[high] - a[low]) * (high - low),

也就是将上述的比例参数 1/2 改进了,根据关键字在整个有序表中所处的位置,让 mid 值的变化更靠近关键字 key,这样也就间接地减少了比较次 数。

及时获取更新,请关注公众号“爬虫技术学习(spider-learn)”

公众号“爬虫技术学习(spider-learn)”

About 逸飞

后端工程师

发表评论

电子邮件地址不会被公开。 必填项已用*标注