bplus, I've looked into your work. Thanks very much. Your algorithm to build the 10,256 combinations is amazing. I never understood recursion. In my code, every possible cell-to-cell connection is tried one after the other.
When your algorithm 2 is used, the time taken to do the search is 0.66seconds, compared to my values above (it's slightly dependent upon which word is searched). So values are similar. However, that time includes reading the dictionary file into the array, which you have to do.
The time taken to do the seach (after the dictionary is loaded) in your method is 0.05seconds. That is quite a change indeed.
In my program, I do the dictionary search directly from hard disc file. I had assumed that the computation time would be taken up in doing the text manipulations to create the 10,256 words. But it does now seem as if it is the dictionary search which is taking the time. I'll try your method in my code.
Thanks a lot, Richard