Другие языки программирования и технологии

Господа! Напишите (если такое конечно возможность) пример двоичного кода, который невозможно сжать (более 10 символов)

Господа! Напишите (если такое конечно возможность) пример двоичного кода, который невозможно сжать (более 10 символов) спасибо
Предположим, что у нас есть строка длиной 10 символов (не больше и не меньше). Возможных вариантов таких строк 2^10. Теперь возьмём все возможные сжатия, у которых длина от 9 и меньше. Количество таких вариантов 2^10 - 2. Вывод: невозможно создать биективную функцию между этими двумя множествами (чтобы каждый элемент одного множества преобразовывался уникальным образом в элемент другого множества, и наоборот в том же виде), так как целевое множество меньшего размера. По крайней мере один элемент сжать не получится.
Антон Анисимов
Антон Анисимов
69 258
Лучший ответ
Виктор Мельников то есть любая строка длинной 10 символов (1 и 0) будет несжимаемой?
Александр Дятко неправильно
возможных сжатий длиной от 9 и меньше гораздо больше, чем 2^10: ведь 0001, 001, 01 и 1 - это четыре разные строки.
Способ сжатия? Требования к описанию (заголовок) ? .

Привожу пример
10 символов двоичного кода
0000000000 - "десять нулей", казалось бы очень легко сжимаются до кодограммы 10 штук символа "0", но нужно учитывать, что нам постребуется записать заголовок - для описания цифры 10 - 5 бит + для описания самого символа 1 бит + для пометки, что далее идет RLE код, а не простая последовательность бит (как минимум один бит) итого 7 бит, при этом я взял простейший для кодирования тестовый вариант
в этом-же варианте кодирования последовательность
0000011111 будет закодирована 14 битами, что больше чем начальная последовательность

итд....
Dmitri Fomin
Dmitri Fomin
89 622
Если в двоичной системе всего 2 варианта - 0 или 1 и что одно исключает другое, то значит невозможно сжать 0 без 1 или 1 без 0.
Соотв. вывод напрашивается сам. В т. ч. и с комбинациями.

P.S: Возможно я не так понял вопрос =)