Лестница слов

Hard
Даны начальное слово beginWord, конечное endWord и словарь wordList. За один шаг можно изменить ровно одну букву слова; каждое промежуточное слово (и конечное) должно присутствовать в словаре.

Верните длину кратчайшей цепочки слов от начала до конца (число слов в последовательности, включая оба конца), либо 0, если пути нет.

Примеры:

Вход: {"beginWord": "hit", "endWord": "cog", "wordList": ["hot", "dot", "dog", "lot", "log", "cog"]}
Выход: 5
Объяснение: beginWord='hit', endWord='cog', словарь содержит cog. Одна из кратчайших цепочек: hit → hot → dot → dog → cog — 5 слов.
Вход: {"beginWord": "hit", "endWord": "cog", "wordList": ["hot", "dot", "dog", "lot", "log"]}
Выход: 0
Объяснение: Тот же старт и финиш, но 'cog' отсутствует в словаре — дойти нельзя → 0.
Вход: {"beginWord": "a", "endWord": "c", "wordList": ["a", "b", "c"]}
Выход: 2
Объяснение: beginWord='a', endWord='c', словарь ['a','b','c']: цепочка a → c длины 2 (одна замена буквы, 'c' есть в словаре).

Ограничения:

1 <= word.length <= 10 Все слова одной длины

Теги:

Строки Графы Поиск в ширину

Комментарии (0)

Войдите, чтобы оставить комментарий

Пока нет комментариев. Будьте первым!