Skip to content

Benchmark for comparing data compression algorithms including Huffman Encoding, Burrows-Wheeler Transform (BWT), and Run-Length Encoding (RLE). Metrics of compression ratios, performance, and space efficiency with various input data. Ideal for evaluating and optimizing compression strategies.

Notifications You must be signed in to change notification settings

ml3m/huffman_encoding_study

Repository files navigation

Huffman Encoding Study

Welcome to the Huffman Encoding Study repository! This project benchmarks various data compression algorithms to evaluate their performance and efficiency. The key algorithms analyzed include:

  • Huffman Encoding
  • Burrows-Wheeler Transform (BWT)
  • Run-Length Encoding (RLE)
  • Combined Approaches: BWT + RLE + Huffman Encoding

Features

  • Compression Ratio Calculation: Measures how well each algorithm compresses data.
  • Performance Metrics: Tracks compression and decompression times.
  • Space Efficiency: Analyzes memory usage during compression and decompression.
  • Diverse Testing: Evaluates algorithms with different input sizes and types.

Getting Started

  1. Clone the Repository:
git clone https://github.com/ml3m/huffman_encoding_study.git

Navigate to the Project Directory:

cd huffman_encoding_study

Build the Project:

go build -o compression_benchmark

Run the Benchmark:

./compression_benchmark [input_file]

Results The benchmarking script compares:

Simple Encoding Huffman Encoding BWT + Huffman Encoding RLE + Huffman Encoding BWT + RLE + Huffman Encoding Results include compression sizes, performance times, and compression ratios.

Contributing Contributions are welcome! To contribute, please fork the repository and submit a pull request. For issues or feature requests, open an issue on GitHub.

Key Sections:

  1. Overview: Briefly describes what the project does.
  2. Features: Lists the main features and metrics of the benchmarks.
  3. Getting Started: Provides instructions on how to clone, build, and run the project.
  4. Results: Describes what the benchmarking script evaluates.
  5. Contributing: Information on how others can contribute to the project.

Feel free to modify any sections or add more information to fit your needs!

About

Benchmark for comparing data compression algorithms including Huffman Encoding, Burrows-Wheeler Transform (BWT), and Run-Length Encoding (RLE). Metrics of compression ratios, performance, and space efficiency with various input data. Ideal for evaluating and optimizing compression strategies.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages