Word Ladder II variation: find transformation sequences between two words (interviewer expected shortest paths).
Asked in the coding round 2 stage. BFS expected for shortest path.
Implement find_ladders(beginWord, endWord, wordList). Words have equal length. One transformation changes exactly one character, and every transformed word must be in wordList, except beginWord. Return all shortest sequences from beginWord to endWord, with each sequence represented as a list of words. Return [[beginWord]] when both words are equal and [] when no sequence exists.
def find_ladders(beginWord, endWord, wordList):