- int find(int* array, int begin, int end, int aim){
- do
- {
- int mid=begin+(end-begin)/2;
- if(array[mid]==aim) return mid;
- else if (aim<array[mid]) end=mid;
- else begin=mid;
- } while(end-begin>1);
- //如果已经到了相邻元素的地步,就直接比较了
- if(array[end]==aim) return end;
- if(array[begin]==aim) return begin;
- return -1;
- }
二分法查找有序数组
最新推荐文章于 2021-08-09 09:10:52 发布