A friend suddenly asked me what words s m a u r n can make up. I tried to fight for a while and didn't see any words, I honestly said, "I don't know, but if you give me some time, I will write a small tool to find it"
As a result, we began to imagine that this function was too simple. We had to find an English word list, list all the combinations, and compare them one by one.
The program is easy to compile. The only difference is the combination of all words. I didn't come up with any good algorithms, so I used recursion to generate all the combinations. However, after writing the program, I still think there should be a better way. Unfortunately, the brain is too busy. After Google, I found "the art of computer programming. volume 4 "is the analysis of the combination problem. Of course, this is just a small game, but write it down first and study it later.
The program has been written out. The key to solving this problem is to find a proper word list.
Where can I find free word lists for example? Google. First find the region. How can we get the entries of all these words? Not found. I remember in which book I said there was a website such as "English words Bank", but I didn't find it. Instead, I found the dictionary download page of stardict:
Http://stardict.sourceforge.net/Dictionaries_PowerWord.php
Here is a lot more. Under a "Concise English-Chinese dictionary", and then find convstar (http://www.octopus-studio.com/beta/MdxBuilder.zip) turn, and then use powergrep processing to get a pure entry, so that there is a 0.45 million entry.
In this way, the problem of this game is solved. The answer is, no.
Of course, there are two issues to be resolved:
1. Get the algorithm of all English letters
2. How can I get a list of all English words?
Question 1: I need to study the books of Donald E. knuth. You can download the electronic version using eMule:
Ed2k: // | file | bytes | 2058854 | 836bd5ddef340ea501ed133c442caa62 | H = 72vewyozpf7jg35c5zo3gcemiozktpt3 | /)
Question 2: Pay attention when you are free.
The story above is a few days ago. Remember it today. At the same time, find a good place to download an English word dictionary:
Http://xdxf.revdanica.com/down/index.php
Download location of WordNet:
Http://wordnet.princeton.edu/obtain
I did not expect a small game, and there were still many gains.