m0_73089059 2022-09-05 22:16 采纳率: 92.9%
浏览 11
已结题

这个二分法搜索的代码错在哪里了?

img


为什么23是数组中的第一个数,但是也显示找不到这个数,用的是二分法搜索

  • 写回答

1条回答 默认 最新

  • kayilv 2022-09-05 22:59
    关注

    第一次查找:left=0,right=6,mid=3.查找失败后,right=2;
    第二次查找:left=0,right=2,mid=1.查找失败后,right=0;
    第三次因为left=0,right=0.直接跳出了循环。i的值一直没变,所以返回-1.
    建议:将left<right的条件改成left<=right

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    问题事件

    • 系统已结题 9月14日
    • 已采纳回答 9月6日
    • 创建了问题 9月5日

    悬赏问题

    • ¥15 Java中import为灰色
    • ¥15 手机等其他智能设备被监听
    • ¥15 在win10 64位的vs打包MSI文件,放到win7 64位上安装成可执行exe文件后,点击程序不运行。
    • ¥50 大众点评用户浏览/消费记录爬虫
    • ¥15 求制作一个个人网页,
    • ¥15 寻涂色内存脚本作者有项目有市场有资源.却技术
    • ¥15 蓝桥杯c51单片机问题
    • ¥15 ajax跨域问题请求修改代码
    • ¥15 python matplotlib
    • ¥15 短信测压+语音,有偿,必须用Python