python中的二分法查找元素

二分法查找指定元素

二分法的前提是该列表必须是有序的,非有序列表需要排序后查找

num_list = [30,11,23,24,35,77,2,13]
list1 = num_list.copy()
list1.sort()

定义4个变量,表示列表两边和中间的索引和要查找的元素

key = 11
left = 0
right = len(list1) - 1
middle = (left + right) // 2

循环比较,查找出目标元素

while left <= right:
	if key > list1[middle]:
		left = middle + 1
	elif key < list1[moddle]:
		right = moddle -1 
	else:
		print('{}在列表中'.format(key)
		break
else:
	print('{}不在在列表中'.format(key)

全部评论

相关推荐

野猪不是猪🐗:我assume that你must技术aspect是solid的,temperament也挺good的,however面试不太serious,generally会feel style上不够sharp
点赞 评论 收藏
分享
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-23 18:34
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务