Course section
Algorithm Analysis
Measure how algorithms scale, compare growth rates, and reason about time, memory, and computational sustainability.
5 topicsAlgorithms & Analysis
An algorithm is a finite, unambiguous sequence of steps that transforms input into output. Analysis predicts resource use independently of a particular machine.
Big-O, Ω & Θ
Asymptotic notation describes the eventual growth of a function while ignoring constants and lower-order terms.
Complexity Classes
Complexity classes group problems and algorithms by resource growth: constant, logarithmic, linear, linearithmic, polynomial, exponential, and factorial.
Order Arithmetic
Rules for loops, branches, sequential blocks, and recurrences let us derive a program's overall asymptotic complexity.
Time–Space Trade-offs
Algorithms often exchange memory for speed. Good engineering chooses a balance that fits latency, hardware, energy, and environmental constraints.