Course Description: An introduction to
the design and analysis of algorithms along with some of the discrete mathematical
structures that are fundamental to the field of Computer Science. This course builds
on the data structures topics from CSCI 235 by exploring efficient ways of using
them to solve problems. Algorithm analysis topics include best, worst, and average
case analysis of iterative and recursive algorithms; asymptotic notation; and solving
recurrence relations. Algorithm design techniques include brute force, greedy, divideand-conquer, dynamic programming, and space/time tradeoff. Discrete structures topics include propositional logic, proof techniques (especially induction), sets, matrices,
sequences and summations, and basic combinatorics

Offerings:Fall

Instructor:
This course is usually taught by Dr. Cusack or Dr. DeJongh.