MWF, 11:00-11:50am, 101 Davis (map)

Course Blog -- Please subscribe to its RSS feed.

This course covers the design, analysis, and implementation of basic data structures in C++. Algorithms operating on the data structures are also covered. It is fundamentally a course about data structures, not about C++. However, as we will implement some of the data structures in C++, basic aspects of C++ and object oriented programming in C++ are also covered. We will start with a brief discussion of the C++ programming language. Then, we survey fundamental data structures (array, vector, lists, queue, stack, hash map, trees, and possibly graphs) and how we can make use of them in C++. Then, we delve deeper into the design, analysis and implementation of such data structures. Asymptotic analysis of algorithms and data structures is discussed. Other C++ features needed for generic implmentations of the data structures are introduced along the way.

- Instructor: Hung Q. Ngo ( hungngo [at] buffalo [dot] edu)
- Teaching assistants
- Mr. Jangyoung (Chris) Kim ( jangyoun [at] buffalo )
- Mr. Suchismit Mahapatra ( suchismi [at] buffalo )
- Office hours:
**see calendar above**

Elliot B. Koffman & Paul A.T. Wolfgang. 2006. Objects, Abstraction, Data Structures and Design: Using C++, Wiley. (ISBN: 0471467553).

Passed both CSE 116 and CSE 191 with a grade of C- or better.

The following books are helpful, though not required.