Python 利用二分法查询数据 | 您所在的位置:网站首页 › 二分法查找python代码 › Python 利用二分法查询数据 |
一. 二分法的适用条件 二分法查找适用于数据量较大时, 但是数据需要先排好顺序. 优点: 二分法查找效率特别高 缺点: 二分法只适用于有序序列 二. 二分法的主要思想是:设查找的数组区间为array[low, high](1)确定该区间的中间位置k(2)将查找的值T与array[k]比较. 若相等, 查找成功返回此位置, 否则确定新的查找区域, 继续二分查找. 区域确定如下: 1) T < array[k] 由数组的有序性可知T < array[k,k+1,……,high], 故新的区间为array[low,……,k-1] 2) T > array[k] 由数组的有序性可知T > array[low,……,k-1], 故新的区间为array[k,k+1,……,high] 每一次查找与中间值比较, 可以确定是否查找成功,不成功则当前查找区间将缩小一半, 递归查找即可. 三. 例题: 用二分法查找一个数是否在随机数列中1. 方法1(使用while循环): 步骤1: 拿到一个有100个随机数的列表 |
CopyRight 2018-2019 实验室设备网 版权所有 |