Intermediate
Open
Pro
First and Last Occurrences of a Number
Given an array nums sorted in non-decreasing order that may
contain duplicate values, and an integer target, return the
indices of the first and last occurrence of target in nums as a
two-element list [first, last]. If target does not appear in
nums, return [-1, -1].
Your solution must run in O(log n) time.
Example 1
Input: nums = [5, 7, 7, 8, 8, 8, 10], target = 8
Output: [3, 5]
Explanation: 8 first appears at index 3 and last appears at index 5.
Example 2
Input: nums = [5, 7, 7, 8, 8, 8, 10], target = 6
Output: [-1, -1]
Explanation: 6 does not appear in nums.
Constraints
0 <= nums.length <= 10^5-10^9 <= nums[i] <= 10^9numsis sorted in non-decreasing order.-10^9 <= target <= 10^9
Share this question