Merge intervals Flashcards
(5 cards)
What is the definition of Merge Intervals?
Merges overlapping intervals in a sorted list.
Use Case: Scheduling, overlapping ranges.
What are the key steps for Merge Intervals?
- Sort intervals by start time.
- Iterate, merge if current start ≤ previous end.
- Add non-overlapping intervals to result.
Action: Explain steps for Merge Intervals aloud.
What is the problem and approach for Merge Intervals?
Problem: Merge overlapping intervals.
Approach: Sort by start, merge if overlapping, keep non-overlapping.
Action: Verbalize solution logic aloud.
What are the complexity and gotchas of Merge Intervals?
Complexity: Time: O(n log n), Space: O(n).
Gotchas: Empty list, no overlaps.
Action: List edge cases for Merge Intervals aloud.
Provide a visual or code example for Merge Intervals.
```python
from typing import List
def merge(intervals: List[List[int]]) -> List[List[int]]:
if not intervals:
return []
intervals.sort(key=lambda x: x[0])
result = [intervals[0]]
for start, end in intervals[1:]:
if start <= result[-1][1]:
result[-1][1] = max(result[-1][1], end)
else:
result.append([start, end])
return result
~~~