自写简易vector实现的二分查找

来源:互联网 发布:淘宝详情页多少钱一个 编辑:程序博客网 时间:2024/06/09 21:07
#include<iostream>using namespace std;#include<vector>using std::vector;#define SIZE 15int isort(vector<int>& vint,int x){ int low=0,high=vint.size()-1,mid; while(low<=high) {  mid=(low+high)/2;  if(vint[mid]==x)  {   cout<<"end:"<<vint[mid]<<endl;   return mid;  }  else if(x<vint[mid])  {   cout<<vint[mid]<<endl;   high=mid-1;  }  else  {   cout<<vint[mid]<<endl;   low=mid+1;  } } return -1;}int main(){ vector<int> vec(SIZE); for(int i=0;i!=SIZE;i++)  vec[i]=i; for(i=0;i!=SIZE;i++)  cout<<vec[i]<<","; cout<<endl; cout<<isort(vec,14)<<endl; return 0;}