CSCD 216: Data Structures & Algorithms

Credits: 3

This course will study the analysis of algorithms and the effects of data structures on them. Algorithms selected from areas such as sorting, searching, shortest paths, greedy algorithms, backtracking, divide- and-conquer, and dynamic programming. Data structures include heaps and search, splay, and spanning trees. Analysis techniques include asymptotic worst case, expected time, amortized analysis, and reductions between problems. Include Generic types , Linked lists , Stacks and queues , Binary trees, Balanced binary trees , Multi-way trees , B-trees and B+-trees, File organization , Searching and sorting , Hashing . Running time analysis of algorithms and their implementations, one-dimensional data structures, trees, heaps, additional sorting algorithms, binary search trees, hash tables, graphs, directed graphs, weighted graph algorithms, additional topics.