Страница: 1 |
Страница: 1 |
Вопрос: моя не понять((
Добавлено: 26.11.05 19:23
Автор вопроса: yxaxa
Вот нашел в инете статейку. Алгоритмы сжатия информации Арифметическое кодирование. И не пойму в чем смысл сжатия. Например, в статье приводится такой пример. "Таким образом, согласно нашей схеме, число 0.2572167752 однозначно кодирует сообщение “BILL GATES”."
Но ведь в числе 10 и более символов, т.е. размер не уменьшается. Может быть я чего то недопонимаю?
Ответы
Всего ответов: 14
Номер ответа: 1
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #1
Добавлено: 26.11.05 20:08
Номер ответа: 2
Автор ответа:
Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #2
Добавлено: 26.11.05 20:28
число то можно запихать в переменную на которую выделено 4 байта всего
Номер ответа: 3
Автор ответа:
HOOLIGAN
Вопросов: 0
Ответов: 1066
Профиль | | #3
Добавлено: 26.11.05 22:11
Но ведь в числе 10 и более символов
В числе не бывает символов. Как только осознаешь это, сразу увидешь, что гейца сжали в 2,5 раза
Номер ответа: 4
Автор ответа:
AASoft
Вопросов: 86
Ответов: 920
Профиль | | #4
Добавлено: 27.11.05 05:03
lol. esliby oni i ceny na vse svoi produkta vo stol`ko raz "szhali" (umen`shili), bylo by voobshe klassno.
a po teme, Morpheus pravil`no skazal.
Номер ответа: 5
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #5
Добавлено: 27.11.05 10:42
Правильно, если бы...
Номер ответа: 6
Автор ответа:
«UL.eXe»
ICQ: 197.895.916.247
Вопросов: 72
Ответов: 540
Профиль | | #6
Добавлено: 27.11.05 11:57
Флудерская тема, имхо..
Номер ответа: 7
Автор ответа:
yxaxa
Вопросов: 31
Ответов: 25
Профиль | | #7
Добавлено: 27.11.05 15:40
эх.... ничего я не понял...))
ведь мы кодируем для чего, чтоб записать в файл наверна...? А в файле то число это символы...
Короче я тупой, объясните нормально.
Я так понял, что имется ввиду что тип интежер занимает меньший объем, чем стринг? А зачем кодировать ради переменной. Короче разжуйте плиз нормально)))))))))
Номер ответа: 8
Автор ответа:
ISpy
Разработчик Offline Client
Вопросов: 47
Ответов: 621
Web-сайт:
Профиль | | #8
Добавлено: 27.11.05 17:02
Строка “BILL GATES” занимает в памяти 10 байт (Если это ANSI. Один символ - один байт).
А число 0.2572167752 занимает меньше байт в памяти.
Вот тебе и сжатие.
Номер ответа: 9
Автор ответа:
Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #9
Добавлено: 27.11.05 17:06
если это вообще сжатие а не хеш - ты это число назад можешь разжать? ну если да - то круто...
Номер ответа: 10
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #10
Добавлено: 27.11.05 17:42
вот-вот )
А то и я сам могу через один байты просто убирать, в итоге получится в 2 раза меньше, а потом можно будет восстановить по буквам, например:
|восстановить по буквам
|встнвт обка
ой че-то не восстанавливается
Номер ответа: 11
Автор ответа:
HOOLIGAN
Вопросов: 0
Ответов: 1066
Профиль | | #11
Добавлено: 27.11.05 18:32
Этот алгоритм обратимый. Информация восстанавливается без потерь.
А в файле то число это символы...
Ой-ли? Что захочу, то и будет в файле.
Dim compress As Single
compress = foo ("BILL GATES"
И теперь записывай переменную compress в файл. Как single. 4 байта. Или ты думаешь, что в файлы пишут только строки?
Откуда ж тогда берутся бинарные файлы?
Номер ответа: 12
Автор ответа:
yxaxa
Вопросов: 31
Ответов: 25
Профиль | | #12
Добавлено: 29.11.05 14:10
хулиган,
а ты знаешь этот алгоритм?
а то я так по ламерски сделал прогу))) иногда тупит. а как переделывать хз. Если знаешь можь я пошлю прогу на мыло?
Номер ответа: 13
Автор ответа:
HOOLIGAN
Вопросов: 0
Ответов: 1066
Профиль | | #13
Добавлено: 29.11.05 15:06
Не пробовал, только читал теорию
Номер ответа: 14
Автор ответа:
yxaxa
Вопросов: 31
Ответов: 25
Профиль | | #14
Добавлено: 30.11.05 21:17
Напишите плиз как посчитать сколько раз повторяется каждый символ в строке.
Ну т.е. после выполнения со строкой holly
должно быть mass(0)=1 (буква х)
mass(1)=1 (буква о)
mass(2)=2 (буква л)
mass(3)=1 (буква у)