https://github.com/ivangrana/data-compression-algorithms
A collection of various compression algorithms implemented in different programming languages such as C++, Rust and Python.
https://github.com/ivangrana/data-compression-algorithms
compression-algorithm huffman-coding
Last synced: over 1 year ago
JSON representation
A collection of various compression algorithms implemented in different programming languages such as C++, Rust and Python.
- Host: GitHub
- URL: https://github.com/ivangrana/data-compression-algorithms
- Owner: ivangrana
- License: mit
- Created: 2023-12-12T18:44:38.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-12T21:53:46.000Z (over 2 years ago)
- Last Synced: 2023-12-12T23:37:19.744Z (over 2 years ago)
- Topics: compression-algorithm, huffman-coding
- Language: C++
- Homepage:
- Size: 3.91 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Data-Compression-Algorithms
## About:
This repository is a collection of various compression algorithms implemented in different programming languages such as C++, Rust and Python. Whether you're a developer, researcher, or enthusiast, this repository aims to provide a comprehensive resource for understanding and implementing compression techniques.
## Algorithms
### Huffman Coding
Huffman coding is a widely used entropy encoding algorithm that creates variable-length codes for data based on the frequency of each symbol. The more frequent the symbol, the shorter its code.
### Lempel-Ziv-Welch (LZW)
LZW is a dictionary-based compression algorithm that replaces repeated sequences of characters with shorter codes. It is commonly used in GIF and TIFF image formats.
### Run-Length Encoding (RLE)
RLE is a simple compression algorithm that replaces sequences of identical elements with a single value and a count. It is efficient for compressing data with long runs of the same value.
### Burrows-Wheeler Transform (BWT)
BWT is a reversible transformation that rearranges characters to make data more amenable to compression. It is often used as a preprocessing step in conjunction with other compression algorithms.
## Usage
Each algorithm has its dedicated folder containing implementation files and examples in various programming languages. To use a specific algorithm, navigate to its folder and follow the instructions in the README file.