數組中最接近的值匹配
給定一個值數組和一個目標值,一個常見的要求是檢索最接近的匹配值在數組中。在處理不精確的資料或無法獲得精確匹配時,這特別有用。
解決方案:
要確定最接近的匹配值,請使用迭代搜尋演算法可以就業。以下是實作此方法的 PHP 函數:
function getClosest($search, $arr) { $closest = null; foreach ($arr as $item) { if ($closest === null || abs($search - $closest) > abs($item - $search)) { $closest = $item; } } return $closest; }
該函數透過迭代地將目標值與陣列中的每個元素進行比較來進行操作。它維護一個 $closest 變數來追蹤遇到的最接近的匹配值。對於每次比較,它都會計算目標和當前陣列元素之間的絕對差。如果差異小於先前記錄的差異,則會更新 $closest 變數。
範例:
使用提供的範例陣列:
$array = [0, 5, 10, 11, 12, 20];
可以執行下列搜尋:
以上是如何找出數組中最接近的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!