Как уже говорили другие, хеш-таблица , вероятно, правильный ответ, , но хеш-таблицы не очень эффективно используют пространство, поэтому, если вы дойдете до точки, где вы можете бытьисчерпав свою память, вы должны рассмотреть отсортированный массив ключей и параллельно отсортированный массив значений.По сути, если вы можете получить доступ ко всему списку ключей заранее, создайте их и отсортируйте.Затем создайте параллельный массив значений.Каждый раз, когда вам нужно что-то сохранить, просто выполните бинарный поиск (O (log N)), чтобы найти индекс в массиве ключей, а затем обновите соответствующий индекс в массиве значений.Это будет менее эффективным с точки зрения скорости, чем хеш-таблица, но практически не будет занимать пространство.