The following tools for the analysis of computer programs and systems are studied: probability, combinatorics, the solution of recurrence relations and the establishment of asymptotic bounds. A number of algorithms and advanced data structures are discussed, as well as paradigms for algorithm design.
Prerequisites
CS 5084 or equivalent