Algorithms have been designed to solve Jumbles, using a dictionary. Common algorithms work by printing all words that can be formed from a set of letters. The solver then chooses the right word. A dictionary of such anagrams may be used to solve puzzles or verify that a jumbled word is unique when creating puzzles. First algorithm: • Begin • Input: J, all the jumbled letters that form an unknown W word(s) • Sort the letters of J in alphabetical order, preserving duplicates • Look up sorted letters in a hash table, initialised with a dictionary, that maps a sorted set of letters to unscrambled words • Print the set of words, which is W • End Second algorithm: • Begin • Input: J, all the jumbled letters that form an unknown W word(s) • Frame a word list Y with all
permutations of J • For each word in Y check if the word is existing in the dictionary • If a match is found then collect it in word list W • Print the words in W • End Algorithm to find the
permutations of J: • Begin • Initialize a string with first character of J denoted by J(1) • Add the second character of J denoted by J(2) on either side of J(1) to get two strings • J(1)
J(2) •
J(2)J(1) • Add the third character of J denoted by J(3) on either side and in between the above 2 strings to get 6 strings • J(1)J(2)
J(3) • J(1)
J(3)J(2) •
J(3)J(1)J(2) • J(2)J(1)
J(3) • J(2)
J(3)J(1) •
J(3)J(2)J(1) • In the same way add J(4) to each of the above strings in either sides and between two characters to get 24 strings • Continue this until all the characters are completed
Douglas Hofstadter developed a program called
Jumbo that tries to solve Jumble problems as a human mind would. The program does not rely on a dictionary and does not try to find real English words, but rather words that could be English, exploiting a database of plausibilities for various combinations of letters. Letters are combined non-deterministically, following a strategy inspired by chemical reactions and free associations. ==See also==