436 Find Right Interval

1. Question

Given a set of intervals, for each of the interval i, check if there exists an interval j whose start point is bigger than or equal to the end point of the interval i, which can be called that j is on the "right" of i.

For any interval i, you need to store the minimum interval j's index, which means that the interval j has the minimum start point to build the "right" relationship for interval i. If the interval j doesn't exist, store -1 for the interval i. Finally, you need output the stored value of each interval as an array.

Note:

  1. You may assume the interval's end point is always bigger than its start point.

  2. You may assume none of these intervals have the same start point.

Example 1:

Input: [ [1,2] ]


Output: [-1]


Explanation: There is only one interval in the collection, so it outputs -1.

Example 2:

Example 3:

2. Implementation

(1) Binary Search

3. Time & Space Complexity

Binary Search: 时间复杂度O(nlogn), 空间复杂度O(n)

Last updated

Was this helpful?