- Find First and Last Position of Element in Sorted Array
Given an array of integers nums sorted in ascending order, find the starting and ending position of a given target value.
Your algorithm’s runtime complexity must be in the order of O(log n).
If the target is not found in the array, return [-1, -1].
Example 1:
Input: nums = [5,7,7,8,8,10], target = 8
Output: [3,4]
Example 2:
Input: nums = [5,7,7,8,8,10], target = 6
Output: [-1,-1]
python
class Solution:
def searchRange(self, nums: List[int], target: int) -> List[int]:
start = end = -1
for i, n in enumerate(nums):
if n == target:
if start == -1:
start = i
end = i
return [start, end]
java:
class Solution {
public int[] searchRange(int[] nums, int target) {
int[] s= {-1,-1};
for(int i = 0;i<nums.length;i++){
if(nums[i] == target & s[0] == -1){
s[0] = i;
}
if(nums[i]== target)
s[1] = i;
}
return s;
}
}