public int search(int[] nums, int target) { // 找target的右边界 - target-1的右边界 return helper(nums, target) - helper(nums, target - 1); } int helper(int[] nums, int tar) { int i = 0; int j = nums.length - 1; // 二分法查找 while(i <= j) { int m = (i + j) / 2; if(nums[m] <= tar) { i = m + 1; } else { j = m - 1; } } return i; }
剑指Offer-53在排序数组中查找数字 I
最新推荐文章于 2022-05-29 13:23:41 发布