兄弟萌,话不多说,show me the code!
import time
def binarySearch(alist,item):
"""二分查找"""
first = 0
last = len(alist) - 1
found = False
while first<=last and not found:
midpoint = (first+last)//2
if alist[midpoint] == item:
found = True
else:
if item < alist[midpoint]:
last = midpoint-1
else:
first = midpoint + 1
return found
if __name__ == '__main__':
testlist = [0,1,2,8,13,17,19,32,42]
start1 = time.perf_counter()
print(binarySearch(testlist,3))
print('consume time: %.5f' % (time.perf_counter()-start1))
start2 = time.perf_counter()
print(binarySearch(testlist,13))
print('consume time: %.5f' % (time.perf_counter()-start2))
输出:
False
consume time: 0.00002
True
consume time: 0.00000