Medium

Len Chen
1 min readOct 1, 2018

Problem

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]

Solution

Do binary search twice for finding left and right boundaries.

Complexity

Although there are two binary search manipulations, it’s time complexity is still O(2logn) = O(logn) if n denotes to length of nums.

It’s trivial that space complexity is O(1).

--

--

Len Chen
Len Chen

Responses (1)