jwalsh / jwalsh/hy-algorithms

Implement string compression algorithms

Open
#35 0 comments 0 reactions 0 assignees View on GitHub
difficulty:medium string
Dominant language
Hy
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Create implementations for string compression algorithms:

## Lossless compression algorithms:
- Run-Length Encoding (RLE)
- Huffman coding
- Lempel-Ziv (LZ77, LZ78)
- Lempel-Ziv-Welch (LZW)
- Burrows-Wheeler Transform (BWT)
- Move-to-Front Transform (MTF)
- Arithmetic coding

## Dictionary-based compression:
- Static dictionary techniques
- Dynamic dictionary building
- Sliding window approaches

## Applications:
- Text compression
- Data serialization
- Network protocols
- File storage

## Requirements:
- Provide compression ratio analysis
- Include time and space complexity details
- Create comprehensive test cases with various input types
- Document practical applications

This collection will demonstrate different approaches to data compression, focusing on string-based algorithms that form the foundation of many compression tools and formats.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.