python二分法查找

高洛峰
發布: 2016-12-19 16:32:33
原創
2044 人瀏覽過

下面是一段用Python實現的二分法查找程式碼

#encoding=utf-8  
  
import sys  
  
def search2(a,m):  
    low = 0  
    high = len(a) - 1  
    while low<=high:  
        mid = (low + high)/2  
        midval = a[mid]  
  
        if midval<m:  
            low = mid + 1  
        elif midval>m:  
            high = mid-1  
        else:  
            print mid  
            return mid  
    print -1  
    return -1  
  
if __name__ == "__main__":  
  
    a = [int(i) for i in list(sys.argv[1])]  
    m = int(sys.argv[2])  
    search2(a,m)
登入後複製

運行測試結果:

shao@ubuntu:~/tmp$ python test_search2.py 123456789 4  
3
登入後複製


更多python二分法查找相關文章請關注PHP中文網!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!