Category: Blog
-

How to Learn Pratt Parsing: Binding Power, Prefix/Infix Parselets, Precedence, Associativity and Expression Parsers
A Learning Hall guide to Pratt parsing, from binding power and prefix/infix parselets through associativity, AST construction, diagnostics and professional expression-parser design.
-

How to Learn Welford’s Online Algorithm: Running Mean, Stable Variance, One-Pass Updates and Streaming Statistics
A Learning Hall guide to Welford’s online algorithm, from running mean and M2 updates to numerical stability, mergeable streaming statistics and professional testing.
-

How to Learn the Misra–Gries Algorithm: Heavy Hitters, Counter Cancellation, Frequency Guarantees and Streaming Memory
A Learning Hall guide to Misra–Gries, from majority-vote intuition and counter cancellation through deterministic heavy-hitter guarantees, verification, complexity and production streaming trade-offs.
-

How to Learn the Z Algorithm: Prefix Matches, Z-Boxes, Linear-Time String Search and Periodicity
A Learning Hall guide to the Z algorithm, from Z-array meaning and Z-box invariants through linear-time proof, pattern matching, borders, periodicity and professional implementation.
-

How to Learn Hierholzer’s Algorithm: Euler Trails, Edge Consumption, Stack Splicing and Linear-Time Graph Traversal
A Learning Hall guide to Hierholzer’s algorithm, from Eulerian existence conditions and cycle splicing through stack implementations, edge IDs, linear complexity and modern memory engineering.
-

How to Learn Centroid Decomposition: Balanced Tree Separators, Centroid Trees, Distance Queries and Divide-and-Conquer
A Learning Hall guide to centroid decomposition, from tree centroids and recursive balance through centroid-tree invariants, distance queries, complexity, implementation and professional verification.