Continues the use of C++ to study abstract data types such as sets, trees, heaps, hash tables, and the concepts of inheritance and recurrence relations. Algorithmic strategies such as divide and conquer, greedy, and back-tracking. Algorithms include random number generation, searching, sorting, and string processing. Complexity analysis includes the big 0, big omega, big theta, and little o. A computer use course.
Prerequisites: CST 250 (4) and Math 245 (3).