Presents formal specifications of abstract data types and their data structure representations, operations, and algorithms. Includes priority queues, dictionaries, graphs, heaps, hash tables, binary search trees, balanced trees,and graph adjacency representations. Covers sorting, searching, dynamic storage handling, and fundamental graph algorithms. Asymptotic analysis of time and space complexity are taught and used throughout the course. Students are expected to implement a variety of data structures and graph algorithms.
Prerequisites: CS 1083 and CS 1303 . Note: Credit is not given for both CS 2383 and CS 3323 .