递归实现二分法查找

递归实现二分法查找

代码:

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版权协议,转载请附上原文出处链接和本声明。