Hoffman coding : removing coding redundancy
1. The first step in Huffman's approach is to create a series of source reductions by ordering the probabilities of the symbols under consideration and combining the lowest probability symbols into a single symbol that replaces them in the next source reduction.
2. At the far LEFT, a hypothetical set of source symbols and their probabilities are ordered from top to bottom in terms of decreasing probability values.
3. To form the first source reduction, the bottom two probabilities, 0.06 and 0.04 are COMBINED to form a "compound symbol " with probability 0.1 (0.06 +0.04).
4. This compound symbol and its associated probability are placed in the first source reduction column so that the probabilities of the reduced source also are ORDERED from the most to the least probable.
5. This process is then repeated until a reduced source with only TWO symbols ( at the far right) is reached.
6. The second step in Huffman's procedure is to CODE each reduced source, starting with the smallest source and working back to the original source (from right to left).
7. The minimal length binary code for a two-symbol source, of course, are the symbols 0 and 1.
8. These symbols ( 0,1) are assigned to the symbols on the right ( the assignment is arbitrary; reversing the order of the 0 and 1 would work just as well).
9. As the reduced source symbol with probability 0.6 was generated by combing two symbols in the reduced source to its left ( 0.3 + 0.3), the 0 is used to code it is now assigned to BOTH of these symbols, AND a 0 and 1 are arbitrarily APPENDED to each to distinguish them from each other.
10. This operation is then repeated for each reduced source until the original source is reached. The final code appears at the far left ( variable-length coding)
汪精衛： 汪精衛全集 （上） 2vols（民國十八年版）