一、解释
二分法:可以理解为折半查找法,每一次都是基于上一次的折半查找
二、实例
l = [1,2,5,7,10,31,44,47,56,99,102,130,240] #l为查找的列表 #num要查找的数 def binary_search(l,num): print(l) #[10, 31] if len(l) > 1: mid_index=len(l)//2 #1 if num > l[mid_index]: #in the right l=l[mid_index:] #l=[31] binary_search(l,num) elif num < l[mid_index]: #in the left l=l[:mid_index] binary_search(l,num) else: print(‘find it‘) else: if l[0] == num: print(‘find it‘) else: print(‘not exist‘) return binary_search(l,32)
时间: 2024-10-11 14:10:35