美文网首页
二分查找

二分查找

作者: Haward_ | 来源:发表于2019-04-22 12:33 被阅读0次
    def bi_search(self,arr,k):
        if k < arr[0] or k > arr[-1]:
            return False
        i,j = 0,len(arr)-1
        while i <= j:
            m = i + int((j - i)/2) 
            #m = int((i+j)/2) 避免溢出问题:i+j超出整数范围
            if arr[m] > k:
                j = m - 1
            elif arr[m] < k:
                i = m + 1
            else:
                return True

        return False

相关文章

网友评论

      本文标题:二分查找

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