Create a min-heap to keep track of the end times of meetings.
For each meeting, do the following:
a. While the min-heap is not empty and the current meeting's start time is greater than or equal to the min-heap's top end time, pop the top element from the min-heap.
b. Add the current meeting's end time to the min-heap.
The size of the min-heap after processing all meetings is the minimum number of rooms required.