C++实现二分查找

来源:互联网 发布:会员制 知乎 编辑:程序博客网 时间:2024/06/14 18:29

1、首先新建binary_search.cpp,实现二分查找函数,代码如下:

#include<iostream>using namespace std;int binary_search(int *array,int nSize,int key){_ASSERT((array!=NULL)&&(nSize!=0));int low=0;int high=nSize-1;while(low<=high){int mid=(low+high)/2;if(key<array[mid])high=mid;else if(key>array[mid])low=mid+1;elsereturn mid;}return -1;  }

2、新建main.cpp,写主函数:

#include<iostream>using namespace std;extern int binary_search(int *array,int nSize,int key);int main(){int N=8;int array[8]={1,2,3,4,5,6,7,8};int pos=binary_search(array,N,3);cout<<"查找元素3的位置为"<<pos<<endl;}

3、运行程序

     

    

0 0