二分查找
#include<iostream> using namespace std; void binary_find(int *a,int begin,int end,int v) { int middle=(begin+end)/2; if(a[middle]==v) { cout<<middle<<endl; return; } else if(begin==end) { cout<<"NIL"<<endl; return; } if(a[middle]>v) binary_find(a,begin,middle,v); else binary_find(a,middle,end,v); } int main() { int a[]={1,2,3,4,5,6,7}; binary_find(a,0,7,5); }