Algorithms

Computer Science 310

Introduction to the design and analysis of algorithms. Course coverage includes divide and conquer algorithms, dynamic programming, greedy algorithms, back-tracking, branch-and-bound, and classic searching and sorting. Complexity is studied as well and includes order of growth, tractability, P vs. NP, and how to design algorithms for NP-hard problems.