美文网首页
python 二分法

python 二分法

作者: Sakura_flower | 来源:发表于2019-04-04 14:54 被阅读0次

原理:所谓的“二分法”是通过获取列表的中间位置后,根据中间位置来进行判断需要查找的数字的大小在左边还是右边,然后继续判断

注意:数列必须是有序数列

下面参看代码:

 def erfen(sums, key):

    start = 0
    end = len(sums)-1
    if key in sums:
        while True:
            center = int((start+end)/2)
            if sums[center] > key:
                end = center-1
            elif sums[center] < key:
                start = center+1
            elif sums[center] == key:
                print(str(key)+'在数组里面的第'+str(center)+'个位置')
                return sums[center]
    else:
        print('该数字不在列表中,请重新输入!')


if __name__ == "__main__":
    sums = [1, 6, 9, 12, 14, 16, 18, 23, 26, 28, 30, 32, 34, 36, 41, 45,
            47, 53, 56, 98]
    while True:
        key = input('请输入列表中要查找的数字:')
        if key == '':
            print('谢谢使用')
            break
        else:
            erfen(sums, int(key))

下面数运行结果:
请输入列表中要查找的数字:6
6在数组里面的第1个位置
请输入列表中要查找的数字:18
18在数组里面的第6个位置
请输入列表中要查找的数字:53
53在数组里面的第17个位置
请输入列表中要查找的数字:43
该数字不在列表中,请重新输入!
请输入列表中要查找的数字:
谢谢使用

相关文章

  • SQL注入奇淫技巧——利用dnslog获取看不到的信息

    对于sql盲注,常用的方法应该是二分法了,为此之前还写过通过二分法猜解的半自动化python脚本,说实话,pyth...

  • 冒泡排序、选择排序和二分法查找

    冒泡排序 选择排序 二分法查找 概念 1.使用二分法好处: 可以加快寻找的效率。2.使用二分法特点: 二分法...

  • 二分法查找

    二分法基本查找 二分法遍历查找

  • 2.25python笔记 高阶编程

    @[TOC](2.25学堂在线python学习笔记 高阶编程) # 高阶编程 1. 利用二分法查找一个字符是否在某...

  • 二分法查找

    二分法查找的前提是数组必须排序!!!二分法查找的前提是数组必须排序!!!二分法查找的前提是数组必须排序!!!二分法...

  • Python 二分法

    二分法定义: 二分法是一种快速查找的方法,时间复杂度低,逻辑简单易懂,总的来说就是不断的除以2除以2... 例如需...

  • python—二分法

    定义:二分法是一种快速查找的方法,时间复杂度低,逻辑简单易懂,总的来说就是不断的除以2除以2... 规定:范围每次...

  • python 二分法

    list=[1,2,3,4,5,6,7,8,9,10] high=len(list) low=0 x=int(in...

  • python 二分法

    原理:所谓的“二分法”是通过获取列表的中间位置后,根据中间位置来进行判断需要查找的数字的大小在左边还是右边,然后继...

  • 手绘日常

    人物素描 今天重点讲二分法 二分法的重要性

网友评论

      本文标题:python 二分法

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