jwalsh / jwalsh/hy-algorithms

Implement classic string algorithms

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

Description

Add implementations for fundamental string algorithms:

- String matching algorithms:
- Knuth-Morris-Pratt (KMP) algorithm
- Rabin-Karp algorithm
- Boyer-Moore algorithm
- String editing and distance metrics:
- Levenshtein distance
- Longest Common Subsequence
- Longest Common Substring
- String compression algorithms
- Regular expression engine primitives
- Suffix tree/array implementations

Each implementation should include:
- Clear explanations in docstrings
- Time and space complexity analysis
- Example usage
- Comprehensive test cases

This will build out the string manipulation section of the library.

Contributor guide

Open the contributing guide

Research direction

The issue is a broad request covering string matching, distance metrics, compression, regular-expression primitives, and suffix structures. Start by reviewing the existing algorithms and data-structure organization in the hy-algorithms repository, then define the scope for each implementation. Done means the selected algorithms have explanations, complexity notes, examples, and comprehensive tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.