- 相關推薦
excel中LOOKUP函數的二分法查找策略
二分法查找又稱折半查找,它是一種效率較高的查找算法。二分法通常要求目標數組中的數據是有序排列的。LOOKUP函數所使用的查找策略就是二分法,不僅僅是LOOKUP,其實VLOOKUP/HLOOKUP函數在其第四參數為True時、MATCH函數在其第三參數為1時也都是遵循了二分法的查找原則來進行運算的。
二分法的具體方法,通常會通過下面這個流程圖來表達:
但流程圖過于抽象,為了讓這個查找過程更容易理解,嘗試使用其他方法再進行一些解讀。
首先是算法文字描述:
1, 將查找值與目標向量中的“中位值”進行對比
2, 大于中位值時,以中位作為邊界,繼續在其右側取新的中位值繼續對比
3, 小于中位值時,以中位作為邊界,繼續在其左側取新的中位值繼續對比
4, 等于中位值時,依次判斷其右側數值是否繼續相等,直到不相等時返回最后一個相等的數值
5, 當中位位置與邊界重疊時,中止對比,此時如果查找值大于中位值,則返回中位值;如果查找值小于中位值,則返回中位左側數值。如果左側數值不存在,返回#N/A
注:上面提到的“中位值”指的是目標數組中位置居中的數據(數據個數為偶數時,中位等于個數除以2;數據個數為奇數時,中位等于<個數+1>除以2),與統計學上傳統意義上的中位值不完全相同
再配合下面兩張運算過程圖加深理解:
最后,再提供一個自動演示查找運算過程的Excel文檔:
【excel中LOOKUP函數的二分法查找策略】相關文章:
Excel中多條件查找數據方法03-30
關于Excel中vlookup函數的使用03-08
excel中if函數的使用方法04-26
excel中now函數的使用方法05-25
Excel中vlookup函數使用方法02-17
EXCEL公式與函數教案12-13
Excel常用函數的參數11-14
excel職場的必備的函數02-27