Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Section F: Advanced Algorithms

This section covers cutting-edge algorithmic techniques that go well beyond standard interview DSA. Topics here appear in competitive programming World Finals, research papers, and specialized engineering roles (quant trading, compiler optimization, network infrastructure, database internals).

Topic Map

mindmap
  root((Advanced Algorithms))
    Network Flow
      Min-Cost Max-Flow
      Cost Scaling
      Push-Relabel Variants
      Dinic Optimizations
    Dynamic Trees
      Link-Cut Trees
      Euler-Tour Trees
      Top Trees
      Dynamic MST
    Tree Techniques
      Centroid Decomposition
      Heavy-Light Decomposition
      DSU on Tree
      Virtual Trees
      Rerooting DP
    DP Optimization
      Knuth / Aliens Trick
      Convex Hull Trick
      Li Chao Tree
      Divide & Conquer DP
      Subset Convolution (SOS DP)
    Polynomials
      FFT / NTT / Bluestein
      Multipoint Evaluation
      Berlekamp-Massey
      Linear Recurrences
    Matrix Algorithms
      Strassen / Coppersmith-Winograd
      Randomized Linear Algebra
      Sketching
    Streaming & Sublinear
      Count-Min / AMS Sketch
      Distinct Counting
      Property Testing
    Approximation & FPT
      PTAS / FPTAS
      Kernelization
      Treewidth
      Graph Minors
    Parallel & Graph
      Cache-Oblivious
      PRAM / Work-Span
      Spectral Methods
      Laplacian Solvers

Reading Order

OrderFilePrerequisitesWhy Next
1network-flow.mdCh 29: Network Flow, Ch 83: Advanced FlowBuilds on max-flow foundations; min-cost is the natural extension
2dynamic-trees.mdCh 98: Splay Trees, Ch 157: Link-Cut TreesForest data structures needed by advanced flow and tree techniques
3tree-techniques.mdCh 84: Tree Algorithms Advanced, Ch 107: HLD/CentroidDecomposition techniques used across all tree problems
4dp-optimization.mdCh 86: DP Optimization, Ch 116: Aliens TrickSpeed-ups for DP that appear everywhere in CP
5polynomials.mdCh 167: FFT/NTT, Ch 171: Berlekamp-MasseyAlgebraic tools underlying fast algorithms
6matrix-algorithms.mdCh 73: Linear Algebra, Ch 174: Matrix ExponentiationFast matrix ops power graph algorithms and DP
7streaming-sublinear.mdCh 79: Probabilistic DS, Ch 147: StreamingBig-data models where full input is unavailable
8approximation-fpt.mdCh 145: Approximation, Ch 148: ParameterizedCoping with NP-hardness in practice
9parallel-graph-algorithms.mdCh 159: External Memory, Ch 160: Parallel AlgorithmsScalability: parallel, I/O-efficient, spectral methods

Foundations vs. Advanced: What’s New

CategoryCovered in Base DSA (chapters/)NEW in advanced/
FlowFord-Fulkerson, Edmonds-Karp, Dinic, Push-Relabel, MCMF basicsCost scaling, dynamic trees in flow, Dinic with current-arc + multithreading
TreesHLD, centroid decomposition, LCA, link-cut basicsVirtual trees, tree hashing, DSU on tree, rerooting DP, small-to-large, top trees, Euler-tour trees
DP OptCHT, divide & conquer DP, KnuthAliens trick (parametric search), Li Chao tree, SOS DP, subset convolution, min-plus convolution, Monge/SMAWK
PolynomialsFFT, NTT basicsBluestein FFT, multipoint evaluation, interpolation, formal power series
MatricesStrassen overview, matrix exponentiationCoppersmith-Winograd, tensor methods, randomized sketching
StreamingCount-Min Sketch, HLL basicsAMS sketch, turnstile/sliding-window streams, sublinear algorithms, property testing
ApproximationPTAS definition, basic schemesKernelization, treewidth algorithms, graph minors, planar separators
ParallelPRAM basicsWork-span model, work stealing, parallel prefix/sorting, spectral graph algorithms, Laplacian solvers

Cross-References to Existing Content