之前小编向大家介绍了二分查找法的实现方法,二分查找法虽然看起来简单,但是特别容易写错,一旦开始要处理细节问题,就麻烦不断,要不是一直循环,要不就是返回的不是正确的值。其实二分查找也有它的的“套路”,只要套进去,基本没有搞不定的情形。我们先来看看最基本,大家都能熟练做出的二分查找题按关键字大小有序排列。话不多说,上代码。
代码:
#二分查找法:前提是该数组是有序数组 print(7/2) print(7//2) print(1//2) #查找给定的数字,如果存在,返回索引,否则,返回-1 defBinarySearch(array,number): low=0 high=len(array)-1 whilelow<=high: mid=(low+high)//2 ifarray[mid]<number: low=mid+1 elifarray[mid]>number: high=mid-1 else: returnmid return-1 array1=[1,2,3,34,56,57,78,87] array2=[1] print(BinarySearch(array2,1))
以上就是实现二分查找法排序的代码,大家可以直接套用,便于我们查找我们想要的数据哦~