编程珠玑第四章
2012-07-27 10:53 javaspring 阅读(310) 评论(0) 编辑 收藏 举报1、二分查找代码
int find(int *a,int n,int key) //a为待查找数组,n为数组长度,key为待查找元素 { int begin=0,end=n-1,mid=0; while(begin<=end) { mid=(begin+end)/2; if(a[mid]==key) //相等,直接返回key在数组中的位置 return mid; else if(a[mid]>key) //key较小,在左半部分查找 end=mid-1; else //key较大,在右半部分查找 begin=mid+1; } return -1; //查找失败,返回-1 }