Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

zipit

This program implements Huffman coding, which is a lossless data compression algorithm.

It consists of two main classes: HuffmanEncoder for file compression and HuffmanDecoder for decompression.

Features

  • Compresses files using Huffman coding algorithm
  • Decompresses files back to original form
  • Supports all file types (pdf, txt, jpeg, etc.)
  • Shows compression statistics
  • Simple command-line interface

How It Works

Compression

  1. Builds character frequency dictionary
  2. Creates Huffman tree from frequencies
  3. Assigns optimal binary codes to each character
  4. Converts input file to compressed binary stream
  5. Saves compressed data with frequency table header

Decompression

  1. Extracts frequency data from compressed file
  2. Rebuilds original Huffman tree
  3. Translates binary stream back to original data
  4. Writes reconstructed file identical to original

About

File compression and decompression using Huffman coding

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages