150 principais entrevistasFácil

Dicionário Alienígena

Guia detalhado e implementação de Python para o problema do 'Dicionário Alienígena'.

Declaração do problema

Fácil

Existe uma nova língua alienígena que usa o alfabeto inglês. No entanto, a ordem das letras é desconhecida para você.

Você recebe uma lista de cadeias de palavras do dicionário da língua estrangeira, onde as cadeias de palavras são classificadas lexicograficamente de acordo com as regras desta nova língua.

Retorna uma sequência de letras exclusivas no novo idioma estrangeiro, classificadas em ordem lexicograficamente crescente pelas regras do novo idioma. Se não houver solução, retorne "". Se houver múltiplas soluções, retorne qualquer uma delas.

Escreva uma função alienOrder(words: List[str]) -> str.

Restrições
  • 1 <= len(words) <= 100
  • 1 <= len(words[i]) <= 100
  • words[i] consists of lowercase English letters

Exemplos

Example 1
Input
words = ["wrt","wrf","er","ett","rftt"]
Output
"wertf"
Explanation

From the sorted words, we can derive the relationships: 'w' -> 'e', 'r' -> 't', 't' -> 'f', etc.

Example 2
Input
words = ["z","x"]
Output
"zx"
Explanation

From "z" and "x", we know 'z' comes before 'x'.

Example 3
Input
words = ["z","x","z"]
Output
""
Explanation

The order is invalid because 'z' comes before 'x' and 'x' comes before 'z'.

Need a Hint?
Considere usar estruturas de dados específicas do Advanced Graphs, como conjuntos ou heaps.
Edge Cases to Watch
  • Estruturas de entrada vazias
  • Entradas de elemento único
  • Grandes limites numéricos

Pronto para resolver?

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

Abrir no Editor
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

Recursos Python recomendados

Expanda seu conhecimento com tutoriais interativos relacionados, folhas de dicas e comparações de código.