Skip to content

Efficient Huffman Coding implementation for file compression and decompression.

Notifications You must be signed in to change notification settings

qossayrida/HuffmanCoding

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Huffman Coding

The project is centered around implementing Huffman Coding, a lossless data compression algorithm. The process involves assigning variable-length codes to input characters based on their frequencies to ensure a prefix-free and unambiguous code system. The implementation will utilize a priority queue and a binary tree to create a file compression and uncompression system.

Key steps include reading a file to count byte frequencies, constructing the Huffman coding tree, generating a byte encoding table, compressing the file, and finally decompressing it to match the original file.

How to use

Upon launching the application, you will be greeted with the Welcome Screen. Here you can choose to

  • Compress

    The screen displays the before and after file sizes along with the compression ratio. It also offers options to copy the file path, access the compressed file, and view the algorithm's details.

  • Uncompress

    This screen shows the original and resulting file sizes post-decompression, ensuring file integrity with the uncompression ratio, and provides similar access and detail viewing options as the compression screen.

🔗 Links

facebook

Whatsapp

linkedin

twitter

About

Efficient Huffman Coding implementation for file compression and decompression.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published