Skip to content

Stepwise 1.1 — five new modules, 65 algorithms

Choose a tag to compare

@nirbhayagga nirbhayagga released this 04 Sep 23:11
· 6 commits to main since this release

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.