递归实现二分法查找
代码:
public class Solution {
public int Search(int[] nums, int target) {
return dfs(nums, 0, nums.Length-1, target);
}
//递归实现二分查找
private int dfs(int[] nums, int left, int right, int target){
if(right < left) return -1;
int mid = left + (right - left) / 2;
if(nums[mid] == target) return mid;
if(nums[mid] < target){
return dfs(nums, mid+1, right, target);
}else{
return dfs(nums, left, mid-1, target);
}
}
}
版权声明:本文为qq_51456342原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。