OI中的二分查找

简介: 简要介绍二分查找的优势,思想与做法。

二分查找

  • 引入
    试想这么一个场景:你在翻阅花名册(按照字母顺序排列)中寻找一位姓氏首字母为P的同学的名字时,是会从花名册的第一行开始寻找,还是会从花名册大约中间部位开始寻找?
    相信所有人都会选择后者的方法,因为这种方法的时间复杂度会低很多,其实这就运用了二分查找的思想。

  • 正文
    再次分析一下上文引入的例子,具体化我们要做的事:首先从中间将花名册分为两部分,比较要找的对象和分割处的名字。如果分割处的名字就是要找的对象,那么寻找过程结束。如果名字在分割点的前面,那么对前面那一部分再进行寻找,反之则反。

  • 核心代码

    int name_find(int q){
    int l=1,r=n+1;//根据实际情况判定范围区间
    while(l<=r){ //这里是判定条件,要根据实际情况进行调整
      int mid=l+(r-1)/2; //避免数据溢出,当然如果确定不会溢出也可以直接用算数平均值
      if(a[mid]>=q) r=mid+1; //同理需要根据实际情况判定
      else l=mid+1;
      }
    if(a[l]==q) return l;
    else return -1;
    }
    
目录
相关文章
|
3月前
|
SQL 存储 分布式计算
【万字长文,建议收藏】《高性能ODPS SQL章法》——用古人智慧驾驭大数据战场
本文旨在帮助非专业数据研发但是有高频ODPS使用需求的同学们(如数分、算法、产品等)能够快速上手ODPS查询优化,实现高性能查数看数,避免日常工作中因SQL任务卡壳、失败等情况造成的工作产出delay甚至集群资源稳定性问题。
1116 36
【万字长文,建议收藏】《高性能ODPS SQL章法》——用古人智慧驾驭大数据战场
|
10月前
|
安全 网络安全 持续交付
【2025最新渠道】免费SSL证书不限量申请
当网站缺乏SSL证书时,用户访问会收到“不安全”警告,影响用户体验和SEO排名。小林的创业公司因成本问题未能及时安装SSL证书,导致用户流失。传统SSL证书存在成本高、操作复杂、维护难等问题。现在,限时免费SSL证书提供无限次申请,覆盖所有子域名,支持自动化部署与终身护航,采用RSA 2048位加密,确保安全无忧。
|
存储 Oracle 关系型数据库
|
2天前
|
数据采集 人工智能 安全
|
12天前
|
云安全 监控 安全
|
3天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
1023 151
|
3天前
|
编解码 人工智能 机器人
通义万相2.6,模型使用指南
智能分镜 | 多镜头叙事 | 支持15秒视频生成 | 高品质声音生成 | 多人稳定对话
|
17天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
1721 9