|
|
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
подскажите какой-нибудь самый простой алгоритм сжатия для текста нужно чтобы буквально несколько строк кода (ну, может я преувеличиваю) скорость работы значения не имеет а вот коэффициент сжатия чем больше тем лучше хотя простота алгоритма важнее коэффициента сжатия ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 13:43 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
Алгоритм Хаффмана... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 14:00 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
DENIS_CHEL, Когда важен коээфициент сжатия, то программист фигней не страдает (пытаясь придумать эффективное сжатие в несколько строк), а подключает dll-ку того же 7zip и пользуется. А если задача учебная, написать простенький архиватор, то а) пофигу на эффективность - ибо эффективные алгоритмы требуют много времени и годами допиливаются, как тот же rar или 7zip; б) никак в пару строчек не вложишься; в) читаешь http://ru.wikipedia.org/wiki/Категория:Алгоритмы_сжатия_без_потерь , дальше уже определяешься что проще и понятнее для тебя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 14:35 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
Edd.DragonDENIS_CHEL, Когда важен коээфициент сжатия, то программист фигней не страдает (пытаясь придумать эффективное сжатие в несколько строк), а подключает dll-ку того же 7zip и пользуется. Ну я как бы и сам пользуюсь готовыми библиотеками, точнее раньше, когда была необходимость пользовался... PS И коллега я сразу перешел на пункт 'в', из того с чем сам когда-то баловался будучи студентом... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 14:48 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
Тогда: 1. Чем не устраивают готовые решения, зачем изобретать велосипед? 2. Раз видел готовые решения и количество строк в них и раз "раньше страдал", то откуда могла вообще появиться фраза " нужно чтобы буквально несколько строк кода "? Т.е. откуда и зачем такое ТЗ? ))) Тогда может будет яснее, что тебе подходит, а что нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 15:05 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
Самый простой алгоритм сжатия - это копирование. Правда, выигрыш места нулевой, но зато он максимально прост для понимания и имеет самый короткий исходный код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 15:15 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
nxxхотя простота алгоритма важнее коэффициента сжатия Если нужен учебный алгоритм - предлагаю проявить оригинальность. Биграммы. Сделать массив из 255 биграмм ("ла", "не", ", " и т.д.); архивирование: Код: plaintext 1. 2. 3. 4. 5. 6. Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 16:29 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
nxxподскажите какой-нибудь самый простой алгоритм сжатия для текста нужно чтобы буквально несколько строк кода (ну, может я преувеличиваю) скорость работы значения не имеет а вот коэффициент сжатия чем больше тем лучше хотя простота алгоритма важнее коэффициента сжатия Есть такой гипотетический архиватор. Вы берёте текст. И (условно) считаете каждое слово - справочным словом. Тоесть если оно встречается второй раз, то вы добавляете на него ссылку. Как учитывать ссылку - вопрос отдельный (можно offset) но, при использовании кодов с плавающей разрядностью (чтоб было компактно) на большом объёме текста можно получить нехилый прирост. У меня есть предположение что на бесконечности этот архиватор порвёт все другие супер-архиваторы у которых справочники могут иметь ограничения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 12:20 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
mayton, Не порвёт. Среднее количество символов в слове русского языка ~9, соответственно, со знаками препинания на авторский лист приходится около четырёх тысяч слов. При словарном запасе автора "бесконечного" текста в 20 000 слов, со словоформами и заглавными буквами набегает под 60 000 в лучшем случае - то есть, два байта. В итоге, авторский лист сжимается до 12 000 байт или 30%. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 12:32 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
Abstraction, не обязательно слова и словоформы. Можно обрабатывать целые фразы, предложения и абзацы текста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 12:35 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
mayton, Так lzma - это и есть обобщение этого подхода ))) В твоем случае нужно вводить целое множество "если" и "костылей", зависимых от особенности контента (в данном случае - текст на каком-либо языке). А lzma - универсальное обобщение подхода. Ты попросту не сможешь его обскакать. Я не могу доказать тебе это математически ибо доказательство в моей голове на полуинтуитивном уровне. Грубо говоря,ты ограничиваешь себя словом или N словами (фразой), а lzma не ограничивается смысловой нагрузкой - надо будет - он вычленит в словарь 3 с половиной слова с пунктуацией и пробелом. А ты нет. Начнешь отимизировать свой подход - выйдешь на собстенную модификацию lzma. Но если напишешь свою сжималку, которая сожмет какой-либо (не короткий, чтобы нивелировать размер заголовка) текст лучше 7z с макс. настройками сжатия - я посыплю голову пеплом ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2011, 16:44 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
Может быть ты прав. Но в wiki пишут про ограничение для метода lzma размером словаря до 4 Гб. Вообще мой пост - это просто теоретический "посыл" к исследованиям. Я почти 7 лет клепал разные алгоритмы поиска и генерации простых чисел. Вобщем-то особого успеха нет. Но в процессе копания пришёл к выводу что мне нужно было заглядывать 1) в дискретку 2) в теорию чисел 3) мат. статистику 4) и прочие разделы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2011, 17:24 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
maytonМожет быть ты прав. Но в wiki пишут про ограничение для метода lzma размером словаря до 4 Гб. Верно. Для 64-битки ограничения этого нет. Но ведь этих 4 гиг в десятки раз больше, чем может понадобиться при архивировании многотомного романа, даже если он на нескольких языках сразу. А если говорить, о специально подобранных данных, которые при ограничении дадут результат хуже, то конечно гипотетический неограниченный размером словаря архиватор порвет ограниченный 7zip. Но гипотетический не ограниченный 7zip скорее всего порвет неограниченный гипотетический "фразо-ориентированный" архиватор )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2011, 17:37 |
|
||
|
самый простой алгоритм сжатия ?
|
|||
|---|---|---|---|
|
#18+
На бесконечности действуют совершенно другие законы. Все эти 32, 64 бит можно засунуть в ж., когда на входе энтропия астрономических масштабов. Яж говорю. Мой архиватор - чистая теория. Как "сравниватель" изоморфизма Ретти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2011, 17:41 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=80&tid=1342763]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 248ms |
| total: | 405ms |

| 0 / 0 |
