main page  —  CS 566 Efficient Algorithms

Unit 2: Machines & Models

This is an archived version of this module from Winter 2025-26.
Click here for the current iteration.

This unit covers

  • algorithm analysis
  • the random-access-machine model
  • asymptotic approximations, Big-Oh notation
  • maximum sum subarray problem

Learning outcomes

  1. Understand the difference between empirical running time and algorithm analysis.
  2. Understand worst/best/average case models for input data.
  3. Know the RAM machine model.
  4. Know the definitions of asymptotic notation (Big-Oh classes and relatives).
  5. Understand the reasons to make asymptotic approximations.
  6. Be able to analyze simple algorithms.

Material

  • slides
  • lecture notes

  • Video 2-1 (2025-10-14, 13:09): §2.1 Algorithm analysis
  • Video 2-2 (2025-10-14, 20:53): §2.2 The word-RAM model
  • Video 2-3 (2025-10-20, 34:09): §2.3 Asymptotics and Big-Oh
  • Video 2-4 (2025-10-20, 12:42): §2.4 Asymptotic pitfalls
  • Video 2-5 (2025-10-20, 30:52): §2.5 Teaser: Maximum subarray problem
  • Video 2-6 (2025-10-21, 23:19): §2.6 Teaser: Algorithm design; efficient solutions for the maximum subarray problem

Further reading and sources

The RAM model is explained in more detail here:

  • Sanders, Mehlhorn, Dietzfelbinger, Dementiev: Sequential and Parallel Algorithms and Data Structures (2019), Springer

For formulas to simplify sums, see:

The maximum subarray problem is discussed in


Unit 1  ⋅  Syllabus  ⋅  Unit 3