Search⌘ K
AI Features

Feature #5: Find Common Meeting Times

Explore how to identify overlapping meetings between two users by comparing their sorted schedules. Understand the implementation details using two pointers and calculate the time and space complexities. This lesson helps you develop a feature to find common busy times effectively.

Description

We want to implement a feature that lets us see when two users are busy at the same time. We will be given the meeting schedule of two users, and we have to find all the overlapping meetings to determine when both of them are unavailable.

We will also assume that each user’s schedule is free of conflicting meetings, meaning their schedules are non-overlapping. Moreover, the meetings have been already sorted based on their starting time.

Let’s say that we are given the following pairs of meeting schedules: {{1, 3}, {5, 6}, {7, 9}} and {{2, 3}, {5, 7}}. In this example, we can see that both of the users will be busy at the following times: {{2, 3}, {5, 6}}.

Take a look at the illustration given below:

Note: For simplicity, we are mapping the military timing to integers in the input. So, for example, 8:00 will be denoted by 8 in the code.

Solution

Here is how we will implement this feature:

  • We will use two indices, i and j, to traverse both of the meeting schedules, meetingsA and meetingsB, respectively.

  • The indices i and j will both be zero at the beginning.

  • Next, ...