Category: Blog
-

How to Learn the Bentley–Ottmann Algorithm: Sweep Lines, Event Queues, Segment Intersections and Robust Geometry
A beginner-to-professional guide to Bentley–Ottmann, covering sweep-line invariants, event queues, sweep status, output-sensitive complexity, degeneracies, robust predicates and production geometry.
-

How to Learn the Alias Method: Walker–Vose Tables, O(1) Discrete Sampling and Probability Buckets
A Learning Hall guide to the Walker–Vose alias method: preprocess a discrete probability distribution into equal buckets for constant-time sampling and understand the correctness and trade-offs behind the table.
-

How to Learn Disjoint Sparse Tables: Associative Range Queries, Prefix–Suffix Blocks and O(1) Answers
A Learning Hall guide to disjoint sparse tables: preprocess static arrays for constant-time associative range queries using block levels, suffix summaries and prefix summaries.
-

How to Learn Interval Trees: Overlap Queries, Max-End Augmentation, Search Pruning and Dynamic Updates
A Learning Hall guide to interval trees: represent intervals, augment ordered trees with subtree maxima, prune overlap searches correctly, and reason about dynamic interval insertion and deletion.
-

How to Learn the Hungarian Algorithm: Assignment Matrices, Potentials, Augmenting Paths and Optimal Matching
A Learning Hall guide to the Hungarian algorithm: formulate assignment problems, understand potentials and reduced costs, trace augmenting choices, prove optimality and compare with general matching methods.
-

How to Learn SA-IS Suffix Array Construction: L/S Types, LMS Substrings, Induced Sorting and Linear-Time Text Indexing
A beginner-to-professional guide to SA-IS suffix-array construction, covering L/S classification, LMS substrings, bucket placement, induced sorting, recursion, correctness and production engineering.