• 技术文章 >Python技术 >Python基础教程

    python用二分查找法排序

    宋雪维宋雪维2021-01-28 16:46:59原创2967

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

    代码:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    #二分查找法:前提是该数组是有序数组

    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中用while语句将二进制转化为十进制 下一篇:在python中二分查找法实现

    相关文章推荐

    • python编程实战:制作秒表程序• python all函数怎么用• Python –如何将int转换为String• Python int()使用小结• python中用while语句将二进制转化为十进制

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网