Data Structures and Algorithms (AT70. 02) Comp. Sc. and Inf. Mgmt Data Structures and Algorithms (AT70.02) Comp. Sc. and Inf. Mgmt. Asian Institute of Technology Instructor: Prof. Sumanta Guha Slide Sources: CLRS “Intro. To Algorithms” book website (copyright McGraw Hill) adapted and supplemented
CLRS “Intro. To Algorithms” Ch. 3: Growth of Functions
More to Discuss o-notation Monotonically/strictly increasing/decreasing Floors and ceilings Modular arithmetic Fibonacci numbers: 0, i = 0 Fi = 1, i = 1 Fi-1 + Fi-2, i 2 How to write code to compute Fibonacci numbers (recursively or iteratively)? lg* n = min{i: lg(i) n ≤ 1}
Problems Ex. 3.1-4 Is 2n+1 = O(2n)? Is 22n = O(2n)? Ex. 3.1-5 Prove Theorem 3.1. Theorem 3.1 For any two functions f (n) and g(n), we have f (n) = θ(g(n)) if and only if f (n) = O(g(n)) and f (n) = Ω(g(n)). Ex. 3.2-2 Prove equation (3.15). a logb c = c logb a (3.15)