用C++语言改写折半查找算法,使其采用递归的调用

来源:百度知道 编辑:UC知道 时间:2024/05/28 15:37:20

假设数据是存放在数组里的.

//num数据数组
//begin数组起始位置
//len数组长度
//val要查找的值
//找到则返回数值所在位置,找不到则返回-1

int get(int num[], int begin, int len, int val){
````if(len < 1){
````````return -1;
````}
````int mid = (begin + len/2);
````if(num[mid] == val){
````````return mid;
````}
````else if(num[mid] > val){
````````return get(num, begin, len/2, val);
````}
````else{
````````return get(num, mid+1, len/2-1, val);
````}
}