Introduction - If you have any usage issues, please Google them yourself
1) prepare array of nodes
2) build the Hoffman tree
3) building Hoffman tables based on the Hoffman tree
4) coding according to the Hoffman table
5) decode according to Hoffman table