查詢演算法__插值查詢

Enjoy_process發表於2019-03-06

                                               查詢演算法__插值查詢

 

 

一、原理

假設:已知有序向量中各元素隨機分佈的規律,例如均勻且獨立的隨機分佈。

於是:[lo,hi)內各元素應大致按照線性趨勢增長

\frac{mid-lo}{hi-lo}\approx \frac{e-A[lo]}{A[hi]-A[lo]}

因此,通過猜測軸點mid,可以極大地提高收斂速度

mid\approx lo+(hi-lo)*\frac{e-A[lo]}{A[hi]-A[lo]}

 

二、效能

最壞情況:O(hi-lo)=O(n)

最好情況:稍試即中、初試即中

一般情況:O(loglogn)

 

 

相關文章