my program will read lots of different strings (single words, all uppercase) and there's going to be millions of them.
I only add a string if it doesn't exist, so before adding a new string I scan all the existing strings, but that's going to get slow with a long list. So to reduce the problem I want to store in 256 lists instead of 1, where the 1st character of each string determines which list it's stored in. This way when I add a word starting with B i only have to check the other B-words.
However, there could be milliiions of words starting with one letter and very few of another, so using a traditional 2D array isn't an option as more bytes would actually be wasted than used ... the array for X-words should be small and not the same size as the large E-words array for example.
And while using ArrayA(), ArrayB() etc would work, it would mean having 256 manually created arrays, so i wouldnt be able to reference all of them as a single array, so id basically have to write 256 duplicates of each code or at least 256 Case statements.
So it's a simple problem but i'm not sure there's a simple solution!? and speed is critical!
thankyou for any suggestions!!!!!
