插值查找法(按比例查找法)
插值查找法(按比例查找法)是在 折半查找算法 的基础上演变而来。现在我们的新问题是,为什么一定要折半呢,而不是四分之一或者折更多呢?
打个比方,在牛津词典里你要查找“apple”这个单词,你会首先翻开字典的中间部分,然后继续折半吗?这样不是有点儿犯傻吗?
查找单词“apple”,我们肯定是下意识的往字典的最前部分翻去,而查找单词“zero”则相反,我们会下意识的往字典的最后部分翻去。
鉴于这种常识,我们的科学家们认为也可以在折半查找法的基础上进行改造改造,因此就诞生了插值查找法,当然我觉得叫“按比例查找法”好像更合适。
想一下:我们之所以知道“apple”这个单词位于字典的很前一部分,是因为“apple”这个单词是以“a”开头的,而“a”这个字母在26个字母里排第一位,而“zero”这个单词的“z”在26个字母里排最后一位,所以我们知道要找“zero”这个单词肯定从字典最后开始找比较快。
那么根据这么个原理,我们就衍生出了插值查找方法:就是按照一定得比例去修改每次分割的值,所以在折半查找法的代码上,我们只需要修改mid的求值算法即可。
视频讲解:http://blog.fishc.com/2933.html
源代码参考:http://bbs.fishc.com/thread-39461-1-1.html
昨天看到你回了这么一句话志之所趋。无远勿届。穷山复海不能限也。志之所向,无坚不入。锐兵固甲,不能御也。
果断觉得鱼大文学功底深厚,我查了谷歌才知道是啥意思。 福禄娃娃 发表于 2013-10-26 21:37 static/image/common/back.gif
昨天看到你回了这么一句话志之所趋。无远勿届。穷山复海不能限也。志之所向,无坚不入。锐兵固甲,不能御也 ...
{:5_106:}哥们活跃度好高! 真是难得给力的帖子啊。 楼主加油,鱼C加油!我们都看好你哦! 福禄娃娃 发表于 2013-10-26 21:37 static/image/common/back.gif
昨天看到你回了这么一句话志之所趋。无远勿届。穷山复海不能限也。志之所向,无坚不入。锐兵固甲,不能御也 ...
真是难得给力的帖子啊。 楼主加油,鱼C加油!我们都看好你哦! 激动人心,无法言表! :lol: 小甲鱼,哪个中间结点的求解没有理解了啊:cry
页:
[1]