美文网首页
Python实现二分查找模板

Python实现二分查找模板

作者: 李白开水 | 来源:发表于2020-03-10 22:10 被阅读0次
    • 遇到数组的时候:
      1.排序or not
      2.数组中有无重复
      3.有无负数

    模板代码实现:

    def binarysearch(alist, item):
        if len(alist) == 0:  #判断数组是否为空
            return -1
        
        left, right = 0, len(alist) - 1
        while left + 1 < right:
            mid = left + (right - left) // 2
            if alist[mid] == item:
                right = mid
            elif alist[mid] < item:
                left = mid
            elif alist[mid] > item:
                right = mid
        
        if alist[left] == item: 
            return left
        if alist[right] == item:
            return right
        
        return -1
    

    相关文章

      网友评论

          本文标题:Python实现二分查找模板

          本文链接:https://www.haomeiwen.com/subject/nzsndhtx.html