leetcode 1034. 在排序数组中查找元素的第一个和最后一个位置

    科技2022-07-12  95

    class Solution { public int[] searchRange(int[] nums, int target) { int n = nums.length; int l = 0, r = n - 1, sign = -1; while (l <= r) { int mid = (l + r) / 2; if (nums[mid] == target) { sign = mid; break; } else if (nums[mid] < target) { l = mid + 1; } else { r = mid - 1; } } if (sign != -1) { int left = sign; while (left > -1 && nums[left] == target) left--; int right = sign; while (right <n && nums[right] == target) right++; return new int[]{left + 1, right - 1}; } return new int[]{-1, -1}; } }

     

    Processed: 0.009, SQL: 8