Explore diverse LeetCode solutions in Python, C++, JavaScript, SQL, and TypeScript. Ideal for interview prep, learning, and code practice in multiple programming languages. Github Repo Link
Table of contents
ToggleMedium
Given an array of meeting time intervals intervals
where intervals[i] = [start i , end i ]
, return the minimum number of conference rooms required.
Example 1:
Input: intervals = [[0,30],[5,10],[15,20]] Output: 2
Example 2:
Input: intervals = [[7,10],[2,4]] Output: 1
Constraints:
1 <= intervals.length <= 10 4
0 <= start i < end i <= 10 6
Python
# time complexity: O(nlogn) # space complexity: O(n) import heapq from typing import List class Solution: def minMeetingRooms(self, intervals: List[List[int]]) -> int: if not intervals: return 0 freeRooms = [] intervals.sort() heapq.heappush(freeRooms, intervals[0][1]) for interval in intervals[1:]: if freeRooms[0] <= interval[0]: heapq.heappop(freeRooms) heapq.heappush(freeRooms, interval[1]) return len(freeRooms) intervals = [[2, 8], [3, 4], [3, 9], [5, 11], [8, 20], [ 11, 15]] print(Solution().minMeetingRooms(intervals))