Top 150 des entrevuesFacile

Échelle de mots

Guide détaillé et implémentation de Python pour le problème « Word Ladder ».

Énoncé du problème

Facile

Une séquence de transformation du mot BeginWord au mot EndWord à l'aide d'un dictionnaire WordList est une séquence de mots BeginWord -> s1 -> s2 -> ... -> sk telle que :

- Chaque paire de mots adjacents diffère par une seule lettre.

- Chaque si pour 1 <= i <= k est dans wordList. Notez que BeginWord n'a pas besoin d'être dans WordList.

- sk == finMot.

Étant donné deux mots, BeginWord et EndWord, et une liste de mots du dictionnaire, renvoie le nombre de mots dans la séquence de transformation la plus courte de BebeWord à EndWord, ou 0 si aucune séquence de ce type n'existe.

Écrivez une fonction ladderLength(beginWord: str, endWord: str, wordList: List[str]) -> int.

Contraintes
  • 1 <= len(beginWord) <= 10
  • endWord.length == beginWord.length
  • 1 <= len(wordList) <= 5000
  • wordList[i].length == beginWord.length
  • beginWord, endWord, and wordList[i] consist of lowercase English letters
  • All the words in wordList are unique

Exemples

Example 1
Input
beginWord = "hit", endWord = "cog", wordList = ["hot","dot","dog","lot","log","cog"]
Output
5
Explanation

One shortest transformation sequence is "hit" -> "hot" -> "dot" -> "dog" -> "cog", which is 5 words long.

Example 2
Input
beginWord = "hit", endWord = "cog", wordList = ["hot","dot","dog","lot","log"]
Output
0
Explanation

The endWord "cog" is not in wordList, so there is no valid transformation sequence.

Need a Hint?
Pensez à utiliser des structures de données spécifiques à Graphs, telles que des ensembles ou des tas.
Edge Cases to Watch
  • Structures d'entrée vides
  • Entrées à élément unique
  • Grandes limites numériques

Prêt à résoudre ?

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

Ouvrir dans l'éditeur
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

Ressources Python recommandées

Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.