Software compactação e descompactação

oie galera alguém poderia me indicar um bom livro,site,blog,etc sobre software de compactador/Descompactador de arquivos?

desde ja obrigada.

Você quer saber como se constrói um compactador?
Você pode ver na wiki: http://pt.wikipedia.org/wiki/LZW e http://en.wikipedia.org/wiki/LZW
Ou aqui: http://marknelson.us/1989/10/01/lzw-data-compression/

Existem algoritmos mais simples.
Para um trabalho de escola, você poderia compactar texto facilmente simplesmente transformando cada palavra(ou cada 3 ou 4 letras) em um ou dois símbolos, e guardando a tabela de símbolos.
Isso funciona especialmente bem pois o arquivo final é binário, e você terá 255 símbolos diferentes para representar grupos de 3 letras.

Pesquisa por código Hamming.

então o tema do meu trabalho é: ?DESENVOLVIMENTO DE UM SISTEMA COMPACTADOR/DESCOMPACTADOR DE ARQUIVOS?
vou ter q sim criar um sistema, mas nao tenho nem ideia por onde começar.

mas aprincipio o professor só queria o referêncial teorico em relação ao tema,que se eu não me engano, seria tipo um ‘resumo’- me corrigem se eu estiver errada.
então pesquisei na net, mas não encontrei muita coisa falando a respeito,a não ser o básico, nem sei tb se tem algum material aprofundando nesse assunto, a não ser falando dos programas q podemos usar para fazer isso.
por isso perguntei se não teria algum livro que aprofundasse mais…

vou da uma olhadinha nesses sites. E muito obrigada!!!

Não é Hamming, é Hufman, foi mal.


http://www.ic.unicamp.br/~rtorres/mc326A_06s2/lab2/enunc.html

É um dos melhores algoritmos de compactação e é baseado em estruturas de dados de árvore. Não é difícil de entender, codificar nem de encontrar exemplos em várias linguagens.

boa noite galera… só agora posso da conitnuidade a esse meu trabalho…

então vamos lá… li todos esses links… mas ainda estou muitooooo perdida… não sei como começo a implementar…

to no começo ainda de programação… e preciso muito de ajuda!!

desde ja agradeço…

Segue uma explicação do algoritmo:

http://www.maths.abdn.ac.uk/~igc/tch/mx4002/notes/node59.html

E um exemplo em JAva:
http://pmarques.dei.uc.pt/programs/huffman/Huffman.java.html

Você pode encontrar a implementação em várias linguagens, mas aconselho a entender como funciona e tentar implementar por si mesma.
Grosseiramente explicando no caso de um arquivo texto a ser compactado:

  1. ele pega um texto, analisa quantas caracteres distintos ele possui e pra cada caracter ele cria um código binário com a seguinte lógica: o que mais repete vai ter um código mais curto, o que menos repete um mais longo, com o cuidado de que dois curtos jamais sejam equivalentes a qualquer longo usado.

  2. Então ele substitui o texto normal, trocando os caracteres pelo novo código e mais uma tabela de tradução. E usa uma estrutura de dados de árvore pra armazenar o novo código

  3. Pra descompactar, basta seguir a tabela de tradução

É um dos algoritmos mais eficientes e o ARJ e RAR usam variantes dele.

Eeerr… essa foto do avatar é você mesmo? :oops:

[quote=marcosalex]
Eeerr… essa foto do avatar é você mesmo? :oops: [/quote]

Podia ir dormir sem essa…

Pessoal!!!

Por favor o Link que postaram tem um exemplo, mais eu rodei ele, e não apareceu nada alguem tem algum pronto para eu ver como é que funciona?

por favor

ai galera… desculpa pela demora em responder… então ja fiz o trabalho, mas tive uma ajudinh se nao… nao terminaria esse ano… de qualquer jeito ainda quero fazer sozinha para aprender… então em breve volto a postar duvidas aqui

valeu galera…