算法代码实现之二分法查找,C/C++实现
来源:互联网 发布:怎么样注册农村淘宝 编辑:程序博客网 时间:2024/06/06 00:27
封装成函数:
//二分法查找//数组a是升序的,len为数组长度//k为待查找的整数//如果查到有就返回对应角标,//没有就返回-1int search(int *a,int len, int k){ int lo = 0, hi = len - 1; while (lo <= hi) { int m = (lo + hi) >> 1; if (a[m] < k) { lo = m + 1; } else if (a[m] > k) { hi = m - 1; } else { return m; } } return -1;}
测试:
int a[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};int len = sizeof(a)/sizeof(int);printf("%d\n",search(a,len,6));
输出:
6
1 0
- 算法代码实现之二分法查找,C/C++实现
- 二分法查找(C语言实现)
- C语言实现二分法查找
- 二分法查找C语言实现
- 算法代码实现之二分法查找,Golang(Go语言)实现
- 算法代码实现之二分法查找,Java实现
- 数据结构与算法 二分法查找【Python与C】的实现
- 【C语言】二分法实现数组查找
- 查找与排序之二分法查找篇(C语言实现)
- C#实现二分法查找算法
- 用c语言实现二分法查找表格【数据结构】
- 二分查找实现 C代码
- 二分法查找(C/C++)
- 七大查找算法(附C语言代码实现)
- 数值作业:二分法求方程的根之C语言实现代码
- 数值作业:二分法求方程的根之C语言实现代码
- 二分法的C/C++实现
- c/c++算法之正确实现二分查找
- POJ 3728The merchant (LCA)
- 《C#高级编程》读书笔记
- java基础之一java环境的搭建
- JSTL标签的各类属性用法
- matlab GUI新手入门——基本概念
- 算法代码实现之二分法查找,C/C++实现
- linux shell 编程笔记 - 常用的find和xargs
- 蓝桥杯1-穷举
- max6sdk
- 如何让eclipse进行智能提示?
- Unity学习笔记.01
- Ant build.xml中应该只包含一个target标签
- C#成魔之路<开篇>
- HSEARCH000135: Unable to guess FieldBridge for...