Целые числа группируются плотным или разреженным способом?
Под плотным я имею в виду:
[1, 2, 3, 4, 42, 43, 78, 79, 80, 81]
По редкости я имею в виду:
[1, 4, 7, 9, 19, 42, 53, 55, 78, 80]
Если целые числа плотно сгруппированы, вы можете сжать первый вектор, чтобы он содержал три диапазона:
[(1, 4), (42, 43), (78, 81)]
Что составляет 40% сжатия. Конечно, этот алгоритм плохо работает с разреженными данными, поскольку сжатые данные занимают на 100% больше места, чем исходные данные.