Download CMSC 351 Homework 2: Algorithms and Complexity - Prof. Clyde P. Kruskal and more Assignments Algorithms and Programming in PDF only on Docsity! Summer 2008 CMSC 351: Homework 2 Clyde Kruskal Due at the start of class Wednesday, June 11, 2008. There are FOUR problems. Problem 1. Professor Hilbert invents a program that uses exactly 100n4 operations to solve the borogove problem of size n. Professor Poincare invents a program that uses 2n/106 operations to solve the same problem. (a) Assume that you are willing to run Hilbert’s program for some specific amount of time. Assume that your computer speed increases by a factor of 20. How much larger a problem can you solve in the same amount of time? Show your work. (b) Assume that your computer executes one billion operations per second. Approx- imately how large a problem can you solve in a year? Show your work (but not the arithmetic). (c) Assume that you are willing to run Poincare’s program for some specific amount of time. Assume that your computer speed increases by a factor of 20. How much larger a problem can you solve in the same amount of time? Show your work. (d) Assume that your computer still executes one billion operations per second. Ap- proximately how large a problem can you now solve in a year? Show your work (but not the arithmetic). (e) Whose program should you use if you are going to run it for a year? (f) For approximately what values of n is Professor Hilbert’s program faster than Professor Poincare’s? Show your work. Problem 2. Show the following. In each of (a), (b), and (c) state specific values of the constants (e.g. c1, c2, n0) you used to satisfy the conditions, and show how you arrived at the values. (a) 3n2 + 4n − 5 = O(n2 − 3n + 1) (b) 2n3 − 5n2 + 3 = Θ(n3) (c) 2n2 + 5n(lg n)3 = O(n2) [Hint: Find n0 such that (lg n) 3 ≤ n, for all n ≥ n0.] (d) n log n = o(n1.5) Problem 3. For each pair of expressions (A,B) below, indicate whether A is O, o, Ω, ω, or Θ of B. Note that zero, one or more of these relations may hold for a given pair; list all correct ones. A B (a) n100 2n (b) (log n)12 √ n (c) √ n ncos(πn/8) (d) 10n 100n (e) nlog n (log n)n (f) log (n!) n log n