Out-of-series #2 – Algoritmo de Lempel-Ziv

Prosseguindo, ou melhor, não prosseguindo, já que este post não está na ordem “didática” do blog, vou postar aqui a outra implementação que fiz no final do ano passado para a disciplina de Fundamentos Matemáticos da Computação. Dessa vez, é o algoritmo de Lempel-Ziv. O professor Edson J. C. Gimenez suscintamente define o algoritmo de Lempel-Ziv:

“O algoritmo de Lempel-Ziv produz um código sem conhecer a estatística da fonte, e por isso é denominado Algoritmo de Codificação de Fonte Universal. (…)”

Também conhecido como LZ77, foi publicado em 1977 por Abraham Lempel e Jacob Ziv (taí o nome do algoritmo).

Bom, então segue a implementação do algoritmo utilizando a linguagem C. Assim como a implementação do algoritmo de Huffman, foi desenvolvido em ambiente Windows, com o mingW, mas pode ser facilmente adaptado para outras plataformas:

O aplicativo lê de um arquivo .txt uma sequência de 0 e 1, apresentando ao final os códigos de largura fixa correspondentes.

Abraço e bons estudos!

3 comentários sobre “Out-of-series #2 – Algoritmo de Lempel-Ziv

    • Rafael disse:

      Basta criar um arquivo txt e colocar nele a sequência binária (ex):
      10010010001001010101000110101010101
      E salvar com um nome qualquer. Coloque ele na mesma pasta do executável e indique o nome dele ao executar. =)

      Curtir

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.