This document provides an introduction to asymptotic notation, which is used to classify algorithms according to their running time or space requirements. It defines common asymptotic notations like Big-O, Big-Omega, and Big-Theta and provides examples of algorithms that run in constant time (O(1)), linear time (O(n)), logarithmic time (O(log n)), quadratic time (O(n^2)), and other runtimes. The document also compares common growth rates like constant, linear, logarithmic, n log n, quadratic, polynomial, and exponential functions. Overall, it establishes the foundation for discussing the asymptotic efficiency of algorithms.
Related topics: