Python/compression
Lukas Olenyi 2c279c492d feat: Add PPM (Prediction by Partial Matching) algorithm implementation
- Implemented the PPM algorithm for data compression and decompression.
- Added methods for updating the model, encoding, and decoding symbols.
- Included utility functions for reading from files and testing the algorithm.
- Verified functionality with various datasets to ensure accuracy.

This addition enhances the repository's collection of Python algorithms.
2024-11-21 02:16:20 +01:00
..
image_data Add __init__.py files in all the directories (#2503) 2020-09-28 19:42:36 +02:00
__init__.py Add __init__.py files in all the directories (#2503) 2020-09-28 19:42:36 +02:00
burrows_wheeler.py Enable ruff RUF002 rule (#11377) 2024-04-22 21:51:47 +02:00
huffman.py Enable ruff PGH003 rule (#11345) 2024-04-02 21:29:34 +02:00
lempel_ziv_decompress.py Enable ruff RUF002 rule (#11377) 2024-04-22 21:51:47 +02:00
lempel_ziv.py Enable ruff RUF002 rule (#11377) 2024-04-22 21:51:47 +02:00
lz77.py [pre-commit.ci] pre-commit autoupdate (#11322) 2024-03-13 07:52:41 +01:00
peak_signal_to_noise_ratio.py refactor: Move constants outside of variable scope (#7262) 2022-10-16 15:03:29 +05:30
ppm.py feat: Add PPM (Prediction by Partial Matching) algorithm implementation 2024-11-21 02:16:20 +01:00
README.md Fix typos (#9076) 2023-09-23 10:53:09 +02:00
run_length_encoding.py Run length encoding (#6492) 2022-10-02 16:57:11 +02:00

Compression

Data compression is everywhere, you need it to store data without taking too much space. Either the compression loses some data (then we talk about lossy compression, such as .jpg) or it does not (and then it is lossless compression, such as .png)

Lossless compression is mainly used for archive purpose as it allows storing data without losing information about the file archived. On the other hand, lossy compression is used for transfer of file where quality isn't necessarily what is required (i.e: images on Twitter).