参考代码:
https://www.cnblogs.com/wanglog/p/6650695.html

伪代码:

输入:排序好的数组array,需要查找的字key
输出:对应的下表
----------
定义low,high,midwhile(low<high)
{
mid=(low+high)/2;
if (array[mid]==key)return mid;
else if (array[mid]<key)low=mid+1;
else high=mid-1;
}

代码:

#include <iostream>
using namespace std;
int BinarySearch(int myarray[], int n, int key)
{int low=0,high=n-1;int mid=0;while(low<=high){mid=(low+high)/2;if (myarray[mid]==key)return mid;if (myarray[mid]<key)low=mid+1;elsehigh=mid-1;}return -1;
}int main()
{int myarray[]={1,3,4,6,8,7};int index=BinarySearch(myarray,6,8);if(index!=-1){cout<<"Find it!"<<endl;cout << "index is:"<<index<< endl;}elsecout<<"Not Found!"<<endl;return 0;
}

输出结果为:

Find it!
index is:4

二分法查找——C++代码相关推荐

  1. 带有哨兵的顺序表查找和二分法查找(折半查找)(java)代码+说明

                                         带有哨兵的顺序表查找和二分法查找(折半查找)(java)代码+说明 一:带有哨兵的顺序表查找 1.算法设计:          ...

  2. java二分法找数数_JavaSE语言基础之数组二分法查找

    一.概念: 算法:当数据量很大适宜采用该方法.采用二分法查找时,数据需是排好序的. 基本思想:假设数据是按升序排序的,对于给定值key,从序列的中间位置k开始比较, 如果当前位置arr[k]值等于ke ...

  3. python实现二分法查找_python3 二分法查找

    ''' 二分法查找 有序列表 掐头去尾取中间 查找列表中xx在不在列表中,在,则返回索引值 ''' # lst = [1, 4, 6, 8, 9, 21, 23, 26, 35, 48, 49, 54 ...

  4. 数据结构与算法笔记(十二)—— 查找算法(顺序查找、二分法查找)

    搜索是在一个项目集合中找到一个特定项目的算法过程.搜索通常的答案是真的或假的,因为该项目是否存在.搜索的几种常见方法:顺序查找.二分法查找.二叉树查找.哈希查找 一.顺序查找 最基本的查找技术,过程: ...

  5. Interview:算法岗位面试—10.30上午上海某信息公司(偏图算法)技术面试之单链表反转、给定整型数组和目标值 二分法查找+下午上海某金融公司(AI岗位,上市)CTO和主管技术面试之Xcepti

    ML岗位面试:10.30上午上海某信息公司(偏图算法)技术面试之单链表反转.给定整型数组和目标值 二分法查找+下午上海某金融公司(AI岗位,上市)CTO和主管技术面试之Xception.推荐算法等 I ...

  6. boost::detail模块实现二分法查找的测试程序

    boost::detail模块实现二分法查找的测试程序 实现功能 C++实现代码 实现功能 boost::detail模块实现二分法查找的测试程序 C++实现代码 #include <boost ...

  7. 二分法查找平方和_面试手撕系列:二分法

    最近春招开始了,面试面着面着一言不合就开始手撕代码手撕就手撕,接下来我打算写几个专题讲讲面试中手撕的常见题目 这些都是LeetCode上有的题目 手撕无非就是 树.链表.二分.字符串这些常用的数据结构 ...

  8. 二分法查找和普通查找

    一.普通查找 对于数组和一个需要查找的元素来说,普通查找的原理很简单,即为从数组的第一个元素到最后一个元素进行遍历,如果第i个元素的值等于我们需要查找的值,那么返回找到的角标i,否则返回-1表示没有查 ...

  9. 二分法查找是基于有序_201,查找顺序查找

    查找算法中顺序查找算是最简单的了,无论是有序的还是无序的都可以,也不需要排序,只需要一个个对比即可,但其实效率很低.我们来看下代码 1public static int search1(int[] a ...

  10. java二分法查找法算法_算法二:二分法查找(java语言)

    说明: 二分法查找 * 解析: * 一维数组,二分法查找:假如有一组数为1,2,3,4,5,6,7,8,9,10要查给定的值7. * 可设三个变量low,mid,high分别指向数据的前,中间和后,m ...

最新文章

  1. SSC:面向大规模场景识别的语义扫描context(IROS2021)
  2. SDN — 核心玩家与技术流派
  3. windows获取文件夹下所有文件名的方法
  4. Ubuntu14.04安装Torch7笔记
  5. [js] 使用js实现一个图片剪裁的功能
  6. OpenSceneGraph 笔记–如何导出三角形数据
  7. ibtais中把clob数据类型转换成string并插入到数据库中
  8. Data-mediator入门系列2
  9. 《精通 ASP.NET MVC 5》----1.5 本书的结构
  10. Python开发Day07(学生选课)
  11. lazarus 中文教程_Delphi 项目转Lazarus 教程
  12. java实训说明说需求分析_java实训总结收获
  13. 2020年运营版双端直播盒子APP带引导安装 QQ微信一键登录+多级分销+粉色系列
  14. 苹果7p大音频脚位图_苹果7P无声音与杂音维修案例
  15. 【CV】Swin Transformer:使用 Shifted Windows 的分层视觉 Transformer
  16. Can I debug relocated code at source-level with DS-5 Debugger?
  17. Cocos Creator:高效率内容生产,引领全平台制霸!
  18. 计算机系统使用寿命,笔记本电脑的使用寿命是多久,你了解吗?
  19. 360wifi在linux系统如何使用,在树莓派上使用360WIFI(也适用于小米、百度、腾讯WIFI)...
  20. 基于大数据风控技术,PBOC二代人行征信报告的解读哪家好

热门文章

  1. jeval 公式_几款公式解析工具的比较
  2. (day 47 - 位运算 ) 剑指 Offer 65. 不用加减乘除做加法
  3. sap供应商主数据表_SAP供应商统驭科目调整操作说明
  4. python爬虫如何连接数据库_Python爬虫框架和数据库连接
  5. word 产生很多temp 不显示_Word与PPT互转,怎样才能30秒内搞定?教程来了
  6. 浏览器中的 HTTP 请求从发起到结束经历的所有阶段
  7. Go基础:数组、切片与指针
  8. scapy获取ip_如何使用scapy从数据包中读取整个ip层和tcp层?
  9. boost boost::asio::read read_some receive 区别
  10. ICRA 2021| 基于精确和减少漂移的关注距离的Camera-IMU-UWB融合定位方法