in reply to N Permutations of M Items

If you are using a dictonary why permute in the first place? loop through the dict and do two tests,
Psudocode: If word is Lenght you are looking for if no skip word, If yest then check to see if all of the chars in word are in the input array If yes you have a hit next word.
-Waswas