Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSнет. Если исходная строка - Код: plaintext Если случайная строка, внезапно, получилась Код: plaintext Код: plaintext А где seed для инициализации ГПСЧ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:43 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima T, тоже нужно будет передавать, это уже написано - в п.7 исходного поста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:47 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima Tдля хранения seed потребуется места столько же сколько занимает исходная подстрока, это я выше доказал я это ваше доказательство не вкурил, извините. Что за "исходная под -строка"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:53 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSDima T, тоже нужно будет передавать, это уже написано - в п.7 исходного поста. В случае если повторов подстроки будет найдено 2 и более, то нахождение пожатого варианта становится более вероятно, но размер пожатого будет меньше на какие-то единицы бит. И я придумал как эту задачу порешать за один проход всех вариантов seed :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:54 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSDima Tдля хранения seed потребуется места столько же сколько занимает исходная подстрока, это я выше доказал я это ваше доказательство не вкурил, извините. Что за "исходная под -строка"? Например чтобы нашлось 1111 (это исходная подстрока), т.е. 4 бита ГПСЧ должен иметь минимум 2^4 вариантов seed, поэтому чтобы записать конкретное значение seed надо будет 4 бита. Хотя для твоего алгоритма доказательство не совсем корректно, т.к. найти надо какой-нибудь один из всего множества, т.е. вероятность выше, но чувствую что не намного, осталось придумать как это обосновать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 17:06 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima T, "Например чтобы нашлось 1111 (это исходная подстрока)" ... в одной конкретной позиции ... "ГПСЧ должен иметь минимум 2^4 вариантов seed" -- но нам совершенно не обязательно, чтобы нашлось именно "1111" и именно в этой позиции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 17:11 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXS-- но нам совершенно не обязательно, чтобы нашлось именно "1111" и именно в этой позиции. Верно, я потому и написал "доказательство не совсем корректно". Надо отталкиваться от другого: какой макс.длины подстрока наиболее вероятно найдется? Думаю М бит, где М такое что 2^M меньше всех возможных комбинаций seed. Потому что ГПСЧ может выдать больше всего различных комбинаций по М бит. Дальше надо посчитать как-то вероятность получения совпадения M+1 бит, M+2 и т.д. Не соображу как, но чувствую что каждый доп.бит уменьшает вероятность вдвое, т.е. сэкономить пару байт это уже достаточно редкий случай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 17:24 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
SiemarglЭто обычный алгоритм LZW, только с ошибками и случайно-генеруемым словарем :fail: только вы то ли не заметили, то ли решили умолчать о том, что "генерируемый словарь" означает, что словарь не класть в выходной файл (увеличивая его размер), как это делается в LZW. ("С ошибками" я не понял, поэтому отнестись не могу.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2018, 15:18 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSсловарь не нужно класть в выходной файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2018, 15:22 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Сейчас, почти через две недели, я бы по-другому сформулировал концепцию сжатия (гипотетическую, конечно, поскольку осуществимость её не доказана). А именно, я бы заменил "флаг" (который непонятно-какой-длины) на "цепную адресацию": Есть данные Д - битовая строка длины N, - которую требуется сжать, и стандартный ГПСЧ. 1. В цикле перебираем значения seed (s), используемые для инициации ГПСЧ: ГПСЧ(s). 2. Записываем s в начало выходного файла. 3. Посредством ГПСЧ(s) генерируем случайную последовательность (СП) той же длины N. 4. Устанавливаем "счётчик цепной адресации" в ноль: А=0. 5. Сравнивая побитово Д и СП, движемся вдоль них обеих до тех пор, пока не находим в них (по "цепному адресу" А) одинаковую подстроку (П) длиной М. 6. Если используемая нами нотация записи целых чисел позволят записать эти два числа (А и М) короче, чем М битов, то записываем их в начало выходного файла. И записываем в его конец очередную порцию несжатых битов - те, что шли до П (то есть подстроку П "выбрасываем", не пишем в выходной файл). (6.1. Кстати, мы можем постановить, что с подстроками короче М0 связываться принципиально не следует; тогда записывать нужно не М, а разницу М-М0, что чуточку выгоднее.) 7. Если условие, описанное в п. 6, выполнено, переходим на п.4; если не выполнено -- переходим на п.5. Дальнейшее сканирование строк -- в любом случае -- продолжается с первого бита после подстроки П. 8. Дойдя до конца строки Д, оцениваем полученный вариант сжатия: если он лучше всех предыдущих, сохраняем его, если нет -- забываем. И переходим к п.1 . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2018, 16:49 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=39581897&tid=1340187]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 281ms |
| total: | 417ms |

| 0 / 0 |
