二分查找
时间复杂度O(log n)
满足条件之后跳出循环返回值-1
1.取参数list列表的长度
2.从第一个索引开始查找
3.element的索引值分为三种情况
# 在list列表中找到元素element
# list中的元素大于element时就-1继续循环
# list中的元素大于element时就+1继续循环
# 直到满足条件返回数值 -1
#二分查找 就是取中间的数值 从中间 向两端查找
def Second_search(list,element):
low = 0
high = len(list) - 1
while low <= high:
mid = (high + low) // 2
if list[mid] == element:
return mid
elif list[mid] > element:
high = mid - 1
else:
low = mid + 1
return -1
list = [1,2,3,4,5,6]
element = 6
index = Second_search(list,element)
if index != -1:
print(f'元素所在的索引为{index}')
else:
print('NO find!')