Huffman coding
A data compression technique which varies the length of the encoded data in proportion to its frequency, that is the more often something is used, the shorter the code used to represent it.