Это связано со сжатием. Простейшим способом было бы упаковать бит и упаковать каждый символ до минимального количества бит.
A-Z - 26 символов, что меньше 32 (5 бит)
добавьте a-z, и это будет 6 бит (где осталось около 12 битовых комбинаций для представления других символов).
Допустим, вам этого достаточно. Таким образом, у вас есть 6x255 битов, что составляет 1530 битов для хранения вашей строки. (191 байт)
Использование только заглавных букв уменьшило бы это немного (до 159 байт)
Вы можете оптимизировать его больше, но тогда вам нужно перейти к алгоритму сжатия, который ожидает определенный язык или шаблоны в строках и оптимизирует эти шаблоны.
Если вы не можете дополнительно указать содержимое строк, вы просто не получите то, что хотите. Сожалею. (Если вы можете рассказать больше о содержимом строк, сделайте это. Один из нас может увидеть шаблоны, которые позволят гораздо лучше «Сжатие»)
Это отсутствие способности делать то, что вы хотите, поэтому хеш-таблицы так круты. Они получают «В основном уникальное» число, а затем имеют второй уровень разрешения для проверки случаев, когда две строки хэшируются на одно и то же число.