jwalsh / jwalsh/hy-algorithms

Implement string matching benchmarking suite

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

Description

Create a comprehensive benchmarking suite specifically for string matching algorithms:

## Algorithms to benchmark:
- Naive string matching
- Knuth-Morris-Pratt (KMP)
- Boyer-Moore
- Rabin-Karp
- Aho-Corasick
- Z algorithm
- Suffix tree/array based approaches

## Benchmark scenarios:
- Short patterns in long texts
- Long patterns in long texts
- Multiple pattern matching
- Approximate string matching
- DNA/genomic sequence matching
- Natural language texts
- Random string generation

## Metrics to capture:
- Preprocessing time
- Matching time
- Memory usage
- Number of character comparisons
- Number of text accesses

## Features:
- Automatic test case generation
- Performance visualization
- Algorithm behavior analysis
- Best algorithm recommendation based on input

This benchmarking suite will provide an empirical comparison of string matching algorithms across different types of inputs, helping users select the most appropriate algorithm for their specific use case.

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.