Class Solution

  • All Implemented Interfaces:

    
    public final class Solution
    
                        

    126 - Word Ladder II\.

    Hard

    A transformation sequence from word beginWord to word endWord using a dictionary wordList is a sequence of words <code>beginWord -> s<sub>1</sub> -> s<sub>2</sub> -> ... -> s<sub>k</sub></code> such that:

    • Every adjacent pair of words differs by a single letter.

    • Every <code>s<sub>i</sub></code> for 1 &lt;= i &lt;= k is in wordList. Note that beginWord does not need to be in wordList.

    • <code>s<sub>k</sub> == endWord</code>

    Given two words, beginWord and endWord, and a dictionary wordList, return all the shortest transformation sequences from beginWord to endWord, or an empty list if no such sequence exists. Each sequence should be returned as a list of the words <code>beginWord, s<sub>1</sub>, s<sub>2</sub>, ..., s<sub>k</sub></code>.

    Example 1:

    Input: beginWord = "hit", endWord = "cog", wordList = "hot","dot","dog","lot","log","cog"

    Output: ["hit","hot","dot","dog","cog","hit","hot","lot","log","cog"]

    Explanation: There are 2 shortest transformation sequences:

    "hit" -> "hot" -> "dot" -> "dog" -> "cog"

    "hit" -> "hot" -> "lot" -> "log" -> "cog"

    Example 2:

    Input: beginWord = "hit", endWord = "cog", wordList = "hot","dot","dog","lot","log"

    Output: []

    Explanation: The endWord "cog" is not in wordList, therefore there is no valid transformation sequence.

    Constraints:

    • 1 &lt;= beginWord.length &lt;= 5

    • endWord.length == beginWord.length

    • 1 &lt;= wordList.length &lt;= 500

    • wordList[i].length == beginWord.length

    • beginWord, endWord, and wordList[i] consist of lowercase English letters.

    • beginWord != endWord

    • All the words in wordList are unique.

    • The sum of all shortest transformation sequences does not exceed <code>10<sup>5</sup></code>.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
      Solution()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final List<List<String>> findLadders(String beginWord, String endWord, List<String> wordList)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait