> shannon | fano | entropia <
// Shannon-Fano – Codificação por entropia top-down para compressão de dados
Baseado em entropia
Usa teoria da informação para criar códigos eficientes de comprimento variável.
Abordagem top-down
Divide recursivamente os símbolos em grupos com probabilidades semelhantes.
Algoritmo histórico
Método pioneiro que influenciou muitos esquemas modernos de compressão.
>> informações técnicas
Como funciona o Shannon-Fano:
A codificação Shannon-Fano ordena os símbolos por frequência e os divide recursivamente em dois grupos com probabilidades totais o mais próximas possível. Cada divisão adiciona um bit ao código (0 à esquerda, 1 à direita). O resultado é um código de prefixo com comprimento variável.
Processo de codificação:
Texto: "AAABBCD" Frequências: A:3, B:2, C:1, D:1 Divisão: [A] | [B,C,D] Códigos: A: 0 B: 10 C: 110 D: 111 Codificado: 0 0 0 10 10 110 111
Por que usar Shannon-Fano:
- >Simples de implementar
- >Boas taxas de compressão
- >Importância histórica
- >Útil para ensino
- >Códigos de prefixo
>> perguntas frequentes
O que é a codificação Shannon-Fano?
A codificação Shannon-Fano é uma técnica de codificação por entropia desenvolvida por Claude Shannon e Robert Fano na década de 1940. Foi um dos primeiros algoritmos a usar códigos de comprimento variável baseados na probabilidade dos símbolos.
Shannon-Fano vs. Huffman?
Ambos produzem códigos de comprimento variável, mas Huffman é ótimo e gera o menor comprimento médio de código. Shannon-Fano é mais simples, mas pode gerar códigos um pouco mais longos. Huffman constrói a árvore de baixo para cima; Shannon-Fano, de cima para baixo.
Como funciona a divisão dos símbolos?
Os símbolos são ordenados por frequência e divididos em dois grupos com probabilidades totais o mais próximas possível. Esse processo se repete de forma recursiva até que cada grupo contenha apenas um símbolo.
Shannon-Fano ainda é usado?
Hoje, Shannon-Fano é usado principalmente com fins históricos e educacionais. Na prática, foi em grande parte substituído pela codificação de Huffman, que garante a optimalidade. Ainda assim, é valioso para aprender os conceitos de compressão.