Назад к задачам
OZONПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
11
Функция упорядочения маршрутов билетов
Компании, где спрашивали:
Условие задачи
Дан массив tickets, содержащий набор несвязанных билетов. Каждый билет – объект с полями from (откуда) и to (куда). Требуется написать функцию sortTickets(tickets), которая переставит элементы массива так, чтобы получилась последовательность перемещений путешественника от начального города до конечного.
Условия задачи:
- Гарантируется, что из всех билетов образуется один непрерывный путь без замыканий.
- Алгоритм должен работать за линейное время O(N).
- Ограничения по дополнительной памяти отсутствуют.
Результатом работы функции должен стать массив билетов, отсортированный в порядке следования маршрута.
const tickets = [
{ from: 'Калининград', to: 'Челябинск' },
{ from: 'Москва', to: 'Калининград' },
{ from: 'Пятигорск', to: 'Краснодар' },
{ from: 'Челябинск', to: 'Астана' },
{ from: 'Краснодар', to: 'Москва' },
];