Course Outcomes

On
successful completion of this course, students are expected to be able to:

- Describe fundamental concepts and techniques for determining the asymptotic
behavior of real-valued functions defined in natural numbers.
- Explain
recurrence equations and solve common recurrences using a variety of
techniques.
- Analyze
an algorithm described in plain language or some form of pseudocode in terms of
its time (or space) efficiency as a function of the size of a problem instance.
- Explain
how various data structures, including trees, heaps and disjoint set
structures, influence the time efficiency of algorithms.
- Apply
general algorithmic design and analysis techniques to solving problems,
including greedy, divide-and-conquer and dynamic programming.
- Identify randomization in algorithms and analyze basic randomized algorithms
such as randomized quicksort and selection.

Return to COMP3711H Fall 2016 Home Page