刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

随机生成的10个在[1,100) 范围内整数存入列表;
输入一个待查找的整数k,运用二分法在列表中查找k,根据查找状态输出对应的结果,请将程序补充完整。
运行结果1:
[13, 25, 27, 41, 52, 66, 67, 69, 72, 75]
72
找到,下标是: 8
运行结果2:
[9, 15, 16, 19, 27, 31, 43, 64, 84, 93]
20
没有找到这个数!

使用微信搜索喵呜刷题,轻松应对考试!

答案:

解析:

【喵呜刷题小喵解析】本题要求使用二分法在列表中查找一个待查找的整数k,并输出查找结果。首先,我们定义一个函数binary_search,该函数接受两个参数:一个列表nums和一个目标值target。在函数内部,我们定义两个指针left和right,分别指向列表的起始位置和结束位置。然后,我们进入一个while循环,只要left小于等于right,就继续循环。在每一次循环中,我们计算中间位置mid,然后判断中间位置的元素nums[mid]与目标值target的关系。如果nums[mid]等于target,说明找到了目标值,返回对应的下标。如果nums[mid]小于target,说明目标值在mid的右边,将left更新为mid+1。如果nums[mid]大于target,说明目标值在mid的左边,将right更新为mid-1。如果while循环结束仍然没有找到目标值,说明列表中不存在目标值,返回"没有找到这个数!"。最后,我们分别调用binary_search函数,传入不同的列表和目标值,并打印输出结果。
创作类型:
原创

本文链接:随机生成的10个在[1,100) 范围内整数存入列表;输入一个待查找的整数k,运用二分法在列表中查

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share