RAM: A Hypothetical Computer!

  • Explain why we use the RAM model of computation for the analysis of algorithms.

Algorithms can be studied independently of the programming language used to implement them and the hardware used to execute them. This is desired as it enables us to compare algorithms and design more efficient ones before implementation.

In this course, we stick to the Java programming language to express algorithms. For a machine-independent analysis of algorithms, we introduce a hypothetical computer called the Random Access Machine or RAM (as defined in "Algorithm Design Manual" by Steven Sekiena [with some adjustments]).

Resources