创新互联Python教程:python用二分查找法排序

之前小编向大家介绍了二分查找法的实现方法,二分查找法虽然看起来简单,但是特别容易写错,一旦开始要处理细节问题,就麻烦不断,要不是一直循环,要不就是返回的不是正确的值。其实二分查找也有它的的“套路”,只要套进去,基本没有搞不定的情形。我们先来看看最基本,大家都能熟练做出的二分查找题按关键字大小有序排列。话不多说,上代码。

代码:

#二分查找法:前提是该数组是有序数组
print(7/2)
print(7//2)
print(1//2)
#查找给定的数字,如果存在,返回索引,否则,返回-1
def BinarySearch(array, number):
    low = 0 
    high = len(array) -1 
    while low <= high:
        mid = (low+high)//2 
        if array[mid] < number:
            low = mid + 1
        elif array[mid] > number:
            high = mid -1
        else:
            return mid 
    return -1
 
array1=[1,2,3,34,56,57,78,87]
array2 = [1]
print(BinarySearch(array2, 1))

以上就是实现二分查找法排序的代码,大家可以直接套用,便于我们查找我们想要的数据哦~

分享名称:创新互联Python教程:python用二分查找法排序
链接地址:http://www.hantingmc.com/qtweb/news41/425691.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联