CSE 250: Data Structures in C++ (Fall 2014)

MWF, 3:00-3:50pm,
Davis 101 (map)

Brief Course Description

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.

Teaching staff

  • Instructor: Hung Q. Ngo ( hungngo [at] buffalo [dot] edu)
  • Teaching assistants
    • Mr. Tamal Biswas ( tamaltan [at] buffalo )
    • Ms. Zakieh S. Hashemifar (zakiehsa [at] buffalo )
  • Office hours: see calendar


Data Structures and Algorithms in C++, 2nd Edition by Michael T. Goodrich, Roberto Tamassia, David M. Mount ISBN 978-0-470-38327-8 February 2011. Paperback, 736 pages.


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