当前位置: 首页 > news >正文

二分法的学习

1、二分法的查找

一般而言,二分法是在数组当中,且数组的内部也是已经做好了从大到小或者从小到大的排序了,我们需要在这些排序中找到我们需要的数值。

 

int binart(int *a, int key, int n)
{
    int left = 0, right = n - 1,mid = 0;

    mid = (left + right) / 2;
    while ((left<right)&& a[mid]!=key)
    {
        if (a[mid]<key)
        {
            left = mid + 1;
        }
        else if ( a[mid] > key)
        {
            right = mid - 1;
        }

        mid = (left + right) / 2;
    }
    if ( a[mid] == key)
    {
        return mid;
    }

    return -1;
}

 

2、二分法查找的次数

二分法查找的几次,范围是 f,而查找的步数 是 s,那么,s = log2(f) + 1; 这里的 log 是以 2 为低。所以当范围是 100  的时候,查找的次数就是 7,而当范围是 1000 的时候,查找的次数就是10.

转载于:https://www.cnblogs.com/qxj511/p/5222949.html

相关文章:

  • 手机移动端WEB资源整合
  • 保温饭盒毕业设计程序
  • 诡异的尺寸
  • 修改PHP上传文件大小限制的方法
  • [转]xml文件中的转义字符
  • FFmpeg编译安装
  • CSS居中的方法总结
  • docker安装caffe
  • leveldb性能分析
  • postgresql利用pg_upgrade升级数据库(从8.4升级到9.5)
  • 吸血鬼数字
  • DropdownList
  • Linq 内联左联等
  • 初探博客园
  • ActiveMQ消息的可靠性机制(转)
  • [数据结构]链表的实现在PHP中
  • Android 控件背景颜色处理
  • css布局,左右固定中间自适应实现
  • interface和setter,getter
  • iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  • JavaScript对象详解
  • nodejs:开发并发布一个nodejs包
  • Redis 懒删除(lazy free)简史
  • SOFAMosn配置模型
  • vue-cli在webpack的配置文件探究
  • 测试如何在敏捷团队中工作?
  • 关于 Cirru Editor 存储格式
  • 和 || 运算
  • 树莓派 - 使用须知
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 我这样减少了26.5M Java内存!
  • 异常机制详解
  • 【干货分享】dos命令大全
  • HanLP分词命名实体提取详解
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • #define用法
  • #pragma once与条件编译
  • (175)FPGA门控时钟技术
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (C++20) consteval立即函数
  • (安全基本功)磁盘MBR,分区表,活动分区,引导扇区。。。详解与区别
  • (二)springcloud实战之config配置中心
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (论文阅读23/100)Hierarchical Convolutional Features for Visual Tracking
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (十八)SpringBoot之发送QQ邮件
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (转) ns2/nam与nam实现相关的文件
  • (转)VC++中ondraw在什么时候调用的
  • (转)全文检索技术学习(三)——Lucene支持中文分词
  • ***通过什么方式***网吧
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • .Net CF下精确的计时器
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler