美文网首页
二分查找

二分查找

作者: 嘿嘿_小于同学 | 来源:发表于2017-08-09 15:43 被阅读32次

    1、思想
    对于一个有序数列,每次和中间的一位数值进行比较,如果待查找的数字大于中间值则在中间值的上面查找,如果待查找的数字小于中间值则在中间值下面再查找。
    2、实现

    def binary_search(elem, my_list):
        low = 0
        hight = len(my_list) - 1
        
        while low <= hight:
            middle = (low + hight) / 2
        
            if elem > my_list[middle]:
                low = middle + 1
            elif elem < my_list[middle]:
                hight = middle -1
            else:
                return True
        
        return False
     
    if __name__ == '__main__':
        my_list = range(1000)
        print binary_search(9999, my_list)
    

    相关文章

      网友评论

          本文标题:二分查找

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