背景:
雷达仰角的初步定位
代码:
#include <iostream>
using namespace std;
/**
* @brief 折半查找
* @param arr 升序
* @param len
* @param check
* @return
*/
int bsearch(const int* arr, const int& len, const int& check){
int start = 0;
int end = len-1;
int mid = 0;
while(start <= end){
mid = start + (end-start)/2;
if(arr[mid] > check){
end = mid-1;
}
else if(arr[mid] < check)
start = mid+1;
else
return mid;
}
return -1;
}
int main(int argc, char* argv[]){
int arr[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
cout<<"bsearch(arr, 10, 0) "<<bsearch(arr, 10, 0)<<endl;
cout<<"bsearch(arr, 10, 0) "<<bsearch(arr, 10, 3)<<endl;
cout<<"bsearch(arr, 10, 0) "<<bsearch(arr, 10, 10)<<endl;
return 0;
}