Test Cases
Case 1
Case 2
Case 3
Input
[[["MUC", "LHR"], ["JFK", "MUC"], ["SFO", "SJC"], ["LHR", "SFO"]], "JFK"]
Output
["JFK", "MUC", "LHR", "SFO", "SJC"] or any valid itinerary
Given a list of flight itineraries, each represented as a pair of departure and arrival airports, write a function to compute the user's possible itinerary starting from a given departure airport. The itinerary must use all the flights in the list exactly once. If no such itinerary is possible, the function should return null
. If there are multiple possible itineraries, return any one of them.
Example 1
Input: [[["MUC", "LHR"], ["JFK", "MUC"], ["SFO", "SJC"], ["LHR", "SFO"]], "JFK"]
Output: ["JFK", "MUC", "LHR", "SFO", "SJC"] or any valid itinerary
Example 2
Input: [[["JFK","KUL"],["JFK","NRT"],["NRT","JFK"]], "JFK"]
Output: null, since there's no way to use all flights exactly once starting from JFK
Example 3
Input: [[["ATL","EWR"],["SFO","ATL"],["EWR","SFO"]], "ATL"]
Output: ["ATL", "EWR", "SFO", "ATL"] or any valid itinerary
1 <= flights.length <= 300
flights
array does not contain duplicate flights.Input
Output