Search⌘ K
AI Features

Solution: Reconstruct Itinerary

Explore how to reconstruct an airline itinerary by applying Hierholzer’s algorithm to find an Eulerian path starting from JFK. Learn to organize flights using graph theory, depth-first search, and lexicographical sorting to determine the correct travel order. This lesson guides you through implementing the algorithm efficiently in C++ while understanding its time and space complexity.

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 ...