Ordenar los símbolos atendiendo a sus probabilidades.
Dividir el conjunto de símbolos en dos subconjuntos de forma que laprobabilidad de cada subconjunto sea lo más parecida posible. Asignar a unsubconjunto un bit de datos y al otro, el contrario.
Aplicar recursivamente el paso anterior a ambos subcojuntos hasta que no seaposible dividir más.