| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Алгоритмы > Поиск повторяющихся значени и их обратная роспись |
| Автор: chiffa 12.4.2010, 13:27 |
| Всем добрый день. Есть следующая задача: имеем строку (массив) с повторяющимися симвовали, допустим: "rwtwwqowqtirwqoweuoewwywtrwtwutwrrwtwpiirwtwpiypooiwirwqoirwtwuuppwqtppiwwtwiewwyppw". Цель "красивее" записать эту строку, что то вроде: [r] => 8 [w] => 27 [t] => 10 [q] => 5 [o] => 6 [i] => 9 [e] => 3 [u] => 4 [y] => 3 [p] => 9 то есть сколько раз какой символ повторяется. Это сделать не проблема, проблема возникает в "обратной перегонки", из [r] => 8 [w] => 27 [t] => 10 [q] => 5 [o] => 6 [i] => 9 [e] => 3 [u] => 4 [y] => 3 [p] => 9 собрать строку "rwtwwqowqtirwqoweuoewwywtrwtwutwrrwtwpiirwtwpiypooiwirwqoirwtwuuppwqtppiwwtwiewwyppw". Проблема в том что неизвестно порядок символов. Может у кого то будут идеи как сие можно реализовать? Заранее всем спасибо. |
| Автор: azesmcar 12.4.2010, 13:38 |
| http://www.google.mu/search?hl=en&client=firefox-a&hs=4ww&rls=org.mozilla%3Aen-US%3Aofficial&q=%D1%81%D0%B6%D0%B0%D1%82%D0%B8%D0%B5+%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%B0+%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC&meta=&aq=f&aqi=&aql=&oq=&gs_rfai= |
| Автор: Akina 12.4.2010, 14:57 |
Его надо сохранить. Если не изменять остальное в этом алгоритме. |
| Автор: chiffa 12.4.2010, 15:59 |
| azesmcar, спасибо. Возник вопрос по алгоритму Хаффмана. С кодирование вроде как все понятно: построил деверо, все норм. А вот как расшифровать по данному алгоритму непонятно, может кто подскажет на примере дерева: 6 / \ 3 Б:3 / \ в:1 а:2 как из этого собрать строку?.... Добавлено через 6 минут и 52 секунды Akina, а как его сохранить?... |
| Автор: nworm 12.4.2010, 16:16 |
| из [r] => 8 [w] => 27 [t] => 10 [q] => 5 [o] => 6 [i] => 9 [e] => 3 [u] => 4 [y] => 3 [p] => 9 строку "rwtwwqowqtirwqoweuoewwywtrwtwutwrrwtwpiirwtwpiypooiwirwqoirwtwuuppwqtppiwwtwiewwyppw" не собрать, информация о порядке утеряна... |
| Автор: chiffa 12.4.2010, 16:23 |
| А по алгоритму Хаффмана? |
| Автор: azesmcar 12.4.2010, 16:30 |
| вот детальное описание алгоритма Хаффмана, там еще есть реализация на паскале. http://algolist.manual.ru/compress/standard/huffman.php вот еще реализации на Си http://compression.ru/download/huff.html#src_c |
| Автор: chiffa 12.4.2010, 16:39 |
| я как раз по этому http://algolist.manual.ru/compress/standard/huffman.php и читал. Не поможешь разобраться с дешифрованием?... |
| Автор: azesmcar 12.4.2010, 16:42 |
| посмотри исходники, есть полно готовых решений. |
| Автор: esperanto 22.4.2010, 21:42 | ||
+1 Осталось чтобы, вас услышал спрашивающий |