CSC625: Data Structures 6 credits (40-10-10)

Objectives

To emphasize the importance of data structure choice and implementation; where necessary, mathematical analysis of these structures will be presented with emphasis on average case analysis and amortized analysis.

Contents

Heaps; binary search trees; hashing tables; red-black trees, van Emde Boaz trees, splay trees, B-trees and their variants; structure for disjoint sets; binomial heaps; Fibonacci heaps; Tree balancing algorithms; branch-and-cut search; linked lists; and table structures; Applications of data structures; application domains/algorithms such as computational geometry, string matching, dynamic programming algorithms.