1. A method of solving word transformation puzzles by transforming a first word into a second word in the shortest possible sequence, the steps comprising: a) growing a first tree having a plurality of adjacent nodes with words disposed thereon, the root node of said first tree having said first word disposed thereon; b) generating one or more words for each of said nodes occurring in the topmost level of said first tree, each of said generated words having a predetermined relationship to the word from which it was generated; c) growing a second tree having a plurality of adjacent nodes with words disposed thereon, the root node of said second tree having said second word disposed thereon; d) generating one or more words for each of said nodes occurring in the topmost level of said second tree, each of said generated words having a predetermined relationship to the word from which it was generated; e) comparing at least one word of said first tree with at least one word of said second tree in order to identify a word common to both of said trees; f) identifying a sequence of words in each of said trees connecting the respective roots thereof to said common word; and g) combining said first and second sequences of words into a single sequence connecting the respective roots of said trees to one another via said common word.