Repository navigation
Stepwise 1.1 — five new modules, 65 algorithms
Five new modules and 27 new algorithms — 65 total.
New modules
- String matching — Knuth–Morris–Pratt, Boyer–Moore–Horspool, Rabin–Karp, Z-algorithm, with a sliding pattern row and the precomputed table (failure function, Z array, shift table) shown live.
- Hash tables — separate chaining, linear probing, quadratic probing, double hashing; collisions, load factor and automatic rehashing, plus search hits/misses.
- Computational geometry — Graham scan, gift wrapping and closest pair (divide & conquer) on random point sets.
- Backtracking — N-Queens and a Sudoku solver with constraint-conflict pruning.
- Number theory — the Sieve of Eratosthenes.
Added to existing modules
- Sorting: TimSort (Java & JS built-in; Python ≤ 3.10), Powersort (the merge policy behind Python ≥ 3.11's
sorted()), bucket sort, bogosort. - Pathfinding: bidirectional Dijkstra, Theta* any-angle search.
- Dynamic programming: Floyd–Warshall with an editable weight matrix and negative-cycle detection.
- Trees: segment tree (build / range query / point update), trie, Huffman coding — the canvas now renders n-ary nodes and forests.
- Graphs: Bellman–Ford on generated graphs with negative edges (but provably no negative cycles), Tarjan strongly connected components, Edmonds–Karp max-flow with live flow/capacity edge labels.
Every algorithm is verified in CI against an independent reference (Kosaraju for Tarjan, brute force for closest pair, textbook answers for DP, and so on). 103 tests.