En İyi 150 RöportajKolay

Seyahat Programını Yeniden Oluştur

'Yol Programını Yeniden Oluşturma' sorunu için ayrıntılı kılavuz ve Python uygulaması.

Sorun Bildirimi

Kolay

Size, ticket[i] = [from_i, to_i]'nin bir uçuşun kalkış ve varış havalimanlarını temsil ettiği uçak biletlerinin bir listesi verilir. Seyahat planını sırayla yeniden oluşturun ve geri verin.

Biletlerin tamamı 'JFK'den ayrılan bir adama ait. Bu nedenle seyahat planı 'JFK' ile başlamalıdır.

Birden fazla geçerli seyahat planı varsa, tek bir dize olarak okunduğunda en küçük sözcük sırasına sahip olan seyahat planını döndürmelisiniz. Örneğin, seyahat planı ['JFK', 'LGA'], ['JFK', 'LGB']'den daha küçük bir sözcük sırasına sahiptir.

Tüm biletlerin en az bir geçerli seyahat programından oluştuğunu varsayabilirsiniz. Tüm biletleri bir kez ve yalnızca bir kez kullanmalısınız.

findItinerary(tickets: List[List[str]]) -> List[str] adlı bir işlev yazın.

Kısıtlamalar
  • 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

Örnekler

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?
Kümeler veya yığınlar gibi Gelişmiş Grafiklere özgü veri yapılarını kullanmayı düşünün.
Edge Cases to Watch
  • Boş giriş yapıları
  • Tek eleman girişleri
  • Büyük sayısal sınırlar

Çözmeye Hazır mısınız?

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

Editörde Aç
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

Önerilen Python Kaynakları

İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.