Last modified: 2016-10-05
This is a course page of
David Casperson
Associate Professor
Computer Science
University of Northern British Columbia

CPSC 200: Algorithm Analysis and Development


Click for the rest of the course outline.

to provide an introduction to the mathematical language, reasoning and methods; to introduce material used directly in later Computer Science courses; and, importantly, to explain how to reason mathematically.
Most of the material covered comes Weiss in particular Chapters~2--4 and~7, with other material as time permits. I shall also cover material from Chapters 12, 13, 19, and 20 of Deitel and Deitel. Topics include:
  • Algorithm analysis and asymptotic complexity (2 weeks).
  • Loop variants, loop invariants, and recursive programming (1 week).
  • Templates, the Standard Template Library, containers, iterators, and generic programming in C++.
  • Sorting algorithms (2 weeks).
  • Error handling and exceptions (1 week).
  • List classes (1 week).
  • List based classes: stacks, queues, and deques (1 week).
  • Tree classes (1 week).
Times are approximate. The list of topics may not be exactly as shown above.
Home page Semesters Site Map
go back Fall 2005 go forward
2017-09 other links

Semester Map
CPSC 141
CPSC 200
Old Exams
CPSC 370
David’s Schedule