二分法查找
2013-05-14 10:59
239 查看
#include <iostream> using namespace std; #define TOTAL_COUNT 1001 bool bin_search(int a[],int n,int key) { int low,hight,mid; low = 0; hight = TOTAL_COUNT -1; //最高位减一 mid = (low+hight)/2; while(low<hight) { if ( a[mid] == key ) { cout << "Find Key " << key << endl; return true; } if ( a[mid] > key ) { hight = a[mid]; } if ( a[mid] < key ) { low = a[mid+1]; } mid = (low+hight)<<1; //防止溢出采用移位操作 } cout << "Not Find Key " << key << endl; return false ; } int main() { int a[TOTAL_COUNT]; for ( int i=0;i< TOTAL_COUNT;i++) { a[i] = i; } bin_search(a,TOTAL_COUNT,999); getchar(); }
相关文章推荐
- php 数组二分法查找函数代码
- 二分法查找
- 旋转数组的二分法查找
- Swift的二分法查找实践
- 数组打印、复制、赋值替换、二分法查找、命令行参数及增强for循环
- java 程序题 二分法查找二维数组(Dichotomy)
- 用二分法查找循环递增序列 | Python
- 二分法查找(Binary Search)
- 二分法查找
- 杭电 2141 Can you find it?二分法+暴力查找
- [学习笔记]排序算法之 二分法查找
- Java二分法(Binary Search)查找递归算法与迭代算法
- Java 编程下的二分法查找
- 二分法查找元素
- 数组二分法查找数据
- I学霸官方免费教程二十九:Java查找算法之二分法查找
- 查找算法:二分法查找
- 黑马程序员03数组排序与二分法查找
- Java数据结构与算法(11) - ch06递归(二分法查找)
- 二分法查找