」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在清單中找到最接近給定值的數字?

如何在清單中找到最接近給定值的數字?

發佈於2024-11-19
瀏覽:154

How do you find the closest number in a list to a given value?

在列表中尋找與給定值最接近的數字

給定一個整數列表和一個目標數字,任務是在列表中找到與給定值最接近的數字是最接近目標的。這個問題可以使用多種方法來解決:

使用最小距離

如果不能保證列表中元素的順序,可以使用帶有 key 參數的 min() 函數。此方法找出每個元素與目標之間的最小距離,並傳回距離最小的元素:

def takeClosest(myList, myNumber):
    return min(myList, key=lambda x: abs(x - myNumber))

使用二分搜尋(二分法)

如果已知清單已排序,則可以應用二分搜尋在O (log n) 時間內更有效地找到最接近的數字:

def takeClosest(myList, myNumber):
    low = 0
    high = len(myList) - 1
    while low 
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3