码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 二分查找的讲解


    • 在我们查找的算法当中,除了顺序查找,还有一种很常用的就是二分查找的算法
    • 但是一定要注意有一个点就是,二分查找,查找的列表顺序一定要是有序的。

    接下来就是二分查找的代码

    1. def binary_search(li, val):
    2. """
    3. li表示列表,val表示要查找的数
    4. 二分查找
    5. :param li:
    6. :param val:
    7. :return:
    8. """
    9. left = 0
    10. right = len(li) - 1
    11. num = 0
    12. while left <= right: # 说明候选区还有值 一定要等于
    13. num += 1
    14. mid = (left + right) // 2
    15. if li[mid] == val:
    16. return mid
    17. elif li[mid] < val: # 说明需要找的值在中间值的右边,区间变为li[mid]--right
    18. left = mid + 1
    19. elif li[mid] > val: # 说明需要找的值在中间值的左边,区间变为left--li[mid]
    20. right = mid - 1
    21. print(num)
    22. li = [1, 2, 3, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21]
    23. binary_search(li, 4)

  • 相关阅读:
    计算机毕设(附源码)JAVA-SSM基于的校园商城
    goland的Markdown拖动插入链接编码有问题
    剖析华为云Astro Platform技术价值与使用体验
    【漏洞复现-solr-命令执行】vulfocus/solr-cve_2019_17558
    【雷达波位编排】基于matlab相控阵雷达的波位编排仿真【含Matlab源码 2251期】
    Redis缓存雪崩、穿透、双写一致
    【Linux系统化学习】探索进程的奥秘 | 第一个系统调用
    Spring Cloud Alibaba+saas企业架构技术选型+架构全景业务图 + 架构典型部署方案
    马斯克对话“虚拟版”马斯克,脑机交互技术离我们有多远
    C++游戏后端开发(魔兽世界,MMO,TrinityCore源码拆解) 教程
  • 原文地址:https://blog.csdn.net/xiaoyang01234/article/details/134398383
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号