Top 150-InterviewEinfach

Reiseroute rekonstruieren

Detaillierte Anleitung und Python-Implementierung für das Problem „Reiseroute rekonstruieren“.

Problemstellung

Einfach

Sie erhalten eine Liste von Flugtickets, wobei Tickets[i] = [from_i, to_i] den Abflug- und Ankunftsflughafen eines Fluges darstellen. Rekonstruieren Sie die Reiseroute in der richtigen Reihenfolge und senden Sie sie zurück.

Alle Tickets gehören einem Mann, der von „JFK“ abfliegt. Daher muss die Reiseroute mit „JFK“ beginnen.

Wenn mehrere gültige Reiserouten vorhanden sind, sollten Sie die Reiseroute mit der kleinsten lexikalischen Reihenfolge zurückgeben, wenn sie als einzelne Zeichenfolge gelesen wird. Beispielsweise hat die Reiseroute ['JFK', 'LGA'] eine kleinere lexikalische Reihenfolge als ['JFK', 'LGB'].

Sie können davon ausgehen, dass alle Tickets mindestens einer gültigen Reiseroute entsprechen. Sie müssen alle Tickets einmal und nur einmal verwenden.

Schreiben Sie eine Funktion findItinerary(tickets: List[List[str]]) -> List[str].

Einschränkungen
  • 1 <= len(tickets) <= 300
  • tickets[i].length == 2
  • from_i.length == 3
  • to_i.length == 3
  • from_i and to_i consist of uppercase English letters

Beispiele

Example 1
Input
tickets = [["MUC","LHR"],["JFK","MUC"],["SFO","SJC"],["LHR","SFO"]]
Output
["JFK","MUC","LHR","SFO","SJC"]
Explanation

The only valid itinerary is JFK -> MUC -> LHR -> SFO -> SJC.

Example 2
Input
tickets = [["JFK","SFO"],["JFK","ATL"],["SFO","ATL"],["ATL","JFK"],["ATL","SFO"]]
Output
["JFK","ATL","JFK","SFO","ATL","SFO"]
Explanation

Another possible reconstruction is JFK -> SFO -> ATL -> JFK -> ATL -> SFO, but it is larger lexically.

Need a Hint?
Erwägen Sie die Verwendung von Advanced Graphs-spezifischen Datenstrukturen wie Mengen oder Heaps.
Edge Cases to Watch
  • Leere Eingabestrukturen
  • Einzelelementeingaben
  • Große numerische Grenzen

Bereit zur Lösung?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Im Editor öffnen
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.