Efficiency classifications and mathematical analysis of recursive and nonrecursive algorithms; design techniques: brute force, greedy, divide-and-conquer, dynamic programming, backtracking, branch-and-bound, space and time tradeoffs; NP-completeness; approximation algorithms; computational problems: sorting, searching, string processing, graphs, arithmetic, linear algebra.
Prerequisites
(CSC 1300 or MAT 2600) and (CSC 1052 or ECE 2620 or ECE 2160)
Last Offered
Fall 2025, Spring 2025, Fall 2024, Spring 2024