有序表查询之四:查询实现总结

对于折半查找与插值查找,二者孰优孰劣,已经在该有序表查询的系列一种进行了阐述,二者可谓打个平手不分伯仲。

在回到斐波那契与折半查找二者身上,平均来说,斐波那契由于折半,但是必须考虑极端情况,也就是当要查找的值为数组下标起始或者结束位置时,斐波那契反而略输折半一筹,这也是能预见的结果。

那么对于这三者孰优孰劣的比较的说法措辞可谓仁者见仁智者见智你说你有理我说我有据了。但有一点,归根结底还是要回归到四则运算性能差异上面来考量,这也是最容易分出高下排个名次的依据。是骡子是马拉出来溜溜看看,折半算法有除法和加法,插值算法有加减乘除样样都有(齐活儿),斐波那契只有加减,在数据量不大的时候三者在加减乘除四则运算性能上相差细微,但在洋量数据中进行查找,再细微的差距也会被放大好多倍。

所以,到这里我们也能得出结论:三种查找方式各有优劣,其本质上是查询前就行分割点的位置选择的差异,折半取中间,插值取头或取尾(有时头与尾反而是中间),斐波那契取黄金分割点。到这里,也是黔驴技穷无话可说了,主要还是尝试着在实际运用中根据需要做出合适的选择,一遍不成三遍打磨。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值