course projects consisting of design and analysis of data structures; data structures: stacks, queues, lists, skip lists, trees, binary search trees, AVL trees, splay trees, B-trees, priority queues, hash tables, union/find data structure; algorithm analysis: sorting, graph algorithms, topological sort, depth-first search, shortest path, minimum spanning tree, network flow, critical path analysis