This is the implementation of Huffman Coding Using Data Structures like Priority Queue( using min heap), Binary Search Tree and linked List implemented in JAVA. This project can perform lossless data compression of any kind of text file. The application can also decode to get back the original file.