C语言二分查找法
2016-02-18 15:11
381 查看
#include <stdio.h> #include <stdlib.h> int halfSearch(int data[], unsigned int len, int key) { int low = 0; int high = len; while(low <= high) { int midder = (low+high)/2; if(data[midder] == key) { return midder; } else if(data[midder] > key) { high = midder-1; } else { low = midder+1; } } return -1; } int main() { int data[] = {0,1,2,3,4,5,6,7,8,9}; int pos; printf("please input number between 0 and 9 : "); scanf("%d", &pos); printf("find index %d\n", pos, halfSearch(data, sizeof(data)/sizeof(int), pos)); system("pause"); return 0; }
相关文章推荐
- Cef应用资源布局
- Cef应用程序结构
- 多重继承《C++ primer 3th》
- neuq oj 1034: C基础-求同存异 C++
- [C/C++不常见语法特性]_[初级]_[左值-右值-lvalue-rvalue]
- [C/C++不常见语法特性]_[初级]_[左值-右值-lvalue-rvalue]
- [群150178878]nRF51822学习笔记–硬件外设篇【1】
- C++ vector 自定义类,重载==操作符,使用STL的find查找
- c++变量的作用域、生存期和可见性
- 关于c++虚函数及访问基类私有函数的实践及一些疑问
- C++中 #ifdef 和#endif的作用
- 实现一些简单的单链表
- test
- 用C/C++扩展你的PHP
- 第一个冒泡算法 C语言
- ll的c++教程第一弹
- C/C++中判断某一文件或目录是否存在
- SQLite3 C语言API入门
- 完全背包问题动态规划c++
- C++ Primer Plus 札记(一) 数组,字符串和string