The unit of measurement of efficiency of an algorithm
A theoretical measure of the execution of an algorithm, usually the time or memory needed, given the problem size n, which is usually the number of items. Two factors are Time and Space(memory)
O (n2) : Complexity for nested loop with equal number of statements.
O(2n): Complexity for recursive algorithms that solve a problem of n steps.
O(n2) is better than O (2n) because if the size of n=5, then O(n2) would require 25 executions, whereas O(2n) would require 32 executions