1

Есть ли научный предел тому, сколько данных можно сжать?

Я имею в виду, что сжатие, по сути, представляет больший объем данных с меньшим, например, представляет a = abc b = def и т.д. ... или вы можете иметь базу данных с большими кусками данных и представлять их с помощью хэша, записать хеш-коды в файл и перестроить его, заменив хеш-коды соответствующими данными, но здесь парадокс дня рождения начинает играть очень рано, например, если вы хотите представить две цифры только одной цифрой, одна цифра имеет Максимальная комбинация 10, тогда как две цифры имеют максимум 100 цифр, что означает, что степень сжатия здесь будет в лучшем случае всего 10% ... Есть ли лучший способ сжатия файлов?

Какой-то способ сохранить большую базу данных комбинаций данных, представить их в файле, который имеет меньшую сумму, чем исходный файл, передать его, а затем восстановить его в месте назначения?

2 ответа2

3

Энтропия Шеннона - предел сжатия данных без потерь.

1

Ну, это зависит от вашего алгоритма, ваших данных, длины ваших данных и от того, насколько сильно вы хотите вернуть точные данные. Данные с меньшим количеством шаблонов будут сжиматься хуже, чем данные с большим количеством шаблонов.

У меня нет никаких исследований, чтобы подтвердить это, но ваш лучший сценарий, вероятно, будет чем-то вроде RLE или аналогичного алгоритма для файла, заполненного нулями или теми же байтами.

При сжатии с потерями вы получаете субъективные значения - то есть сжатие файлов в JPEG с настройками наименьшего качества может привести к получению изображений, которые практически не похожи на исходное изображение, - но по мнению кого?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .