Studies the merging of abstract data types (ADT’s) and the algorithms which manipulate them. Topics may include the study of the elementary searching and sorting algorithms, stacks, queues, lists, trees, graphs, hash tables and implementation strategies. Also introduces complexity analysis, asymptotic measures and resource consumption including the trade-off between time and space. For each data structure examined, common algorithms which utilize the structure will be studied and “Big O” complexity analysis discussed for each algorithm. Credits:4 Prerequisite:CS 162 and MTH 232, both with a grade of C or better