Huffman algorithm is way of loss-less data compression and decompression. Each symbol and its frequency is calculated in the compressing data. This algorithm provides a code tree and a frequency table based on the calculated symbols. The complexity of the huffman encoding is O(NlogN). Successfully implemented in Java in Eclipse.