Search⌘ K
AI Features

Solution: Reconstruct Itinerary

Explore how to reconstruct an itinerary from airline tickets by applying graph traversal techniques like Hierholzer’s algorithm and depth-first search. Understand how to prioritize destinations in lexical order and build an efficient Eulerian path solution starting from JFK. This lesson covers both algorithm design and complexity analysis for practical coding interview readiness.

Statement

Given a list of airline tickets where tickets[i] = [fromi, toi] represent a departure airport and an arrival airport of a single flight, reconstruct the itinerary in the correct order and return it.

The person who owns these tickets always starts their journey from "JFK". Therefore, the itinerary must begin with "JFK". If there are multiple valid itineraries, you should prioritize the one with the smallest lexical ordeLexicographical order is a sorting arrangement similar to how words are arranged in a dictionary. It compares items character by character, based on their order in the alphabet or numerical value.r when considering a single string.

  • For example, the itinerary ["JFK", "EDU"] has a smaller lexical order than ["JFK", "EDX"].

Note: You may assume all tickets form at least one valid itinerary. You must use all the tickets exactly once.

Constraints:

  • 11 \leq tickets.length 300\leq 300

  • tickets[i].length =2= 2

  • fromi.length =3= 3

  • toi.length =3= 3 ...