二分查找和插值查找都是基于减而治之的原理
1)细节:二分查找的范围的下标:lo和hi代表[lo,hi),因此,选择mid的时候,两部分是[lo,mid),和[mid+1,hi);
插值查找的含义类似于在字典中确定一个字母的范围,比如选择b的话,会在较前的页码处查找,这里,字母相当于数组的下标, 而页码相当于要查找的元素;
2)效率:查找对数值的规模进行折半,因此二分查找的时间复杂度为logn,或者说是共有n个十进制位的的数
插值查找在每次查找后,数的规模变为根号n, 可以看作是有logn位的二进制数,每次规模减小为根号n,则每次二进制位减小为0.5logn,则时间复杂度为loglogn
3)关系:二者的思想其实是一致的,只不过是作为查找轴点的选择方法不同;
插值查找需要数据的分布在一定范围内均匀,否则容易较小数据受到扰动;
插值查找更适合于大规模的查找。