Algorithms for optimization problems, including linear programming, and for systems of nonlinear equations. Mathematical descriptions of the system and of the rules governing its operation. CSC364H Computability and Complexity Measuring algorithm performance. Advanced data structures for main memory resident information, such as binomial heaps, leftist trees, self-adjusting lists and balanced search trees. Introduction to lower bounds.
Emphasis is given to problem solving and a theoretical treatment of the data structures.
This half-course involves a significant implementation project in any area of Computer Science. The project may be undertaken individually or in small groups. The project is offered by arrangement with a Computer Science faculty member. This half-course involves a significant literature search and expository work in any area of Computer Science. This work must be undertaken individually.