美文网首页
python—二分法

python—二分法

作者: 4c7e6478f472 | 来源:发表于2018-07-29 19:16 被阅读0次

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

   例如需要查找有序数组arr里面的某个关键字key的位置,那么首先确认arr的中位数或者中点center,下面分为三种情况:
    假如arr[center]>key,说明key在arr中心左边范围;
    假如arr[center]<key,说明key在arr中心右边范围;
    假如arr[center]=key,说明key在arr中心。

规定:
范围每次缩小一半,写个while的死循环知道找到为止。
二分法查找非常快且非常常用,但是唯一要求是要求数组是有序的。

代码:
list = [1,2,3,4,7,10,50,60,100]
min = 0
max = len(list) - 1
count = 80
while True:
print("找到了")
center = int((min+max)/2)
if list[center] > count:
max = center - 1
elif list[center] < count:
min = center + 1
elif list[center] == count:
print("索引是%d"%center)
break

相关文章

  • 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/mnfvuftx.html