Для слотов с одинаковым представлением создайте Set забронированных значений и отфильтруйте initialSlots.
Напишите функцию getFreeTimes, которая возвращает свободные слоты из initialSlots, исключая забронированные слоты из массива бронирований.
Для слотов с одинаковым представлением создайте Set забронированных значений и отфильтруйте initialSlots.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Для слотов с одинаковым представлением создайте Set забронированных значений и отфильтруйте initialSlots.
Если оба массива содержат строки времени одного формата:
function getFreeTimes(initialSlots, bookings) {
const busy = new Set(bookings);
return initialSlots.filter(slot => !busy.has(slot));
}
Сложность O(n + m). Если бронирования — объекты или интервалы, сначала нужен явный ключ либо проверка пересечения; сравнение объектов по ссылке не решит такую задачу.