CSE 30331 (at Notre Dame):
Time
TTh 9:30–10:45
Room
102 DeBartolo Hall
Instructor
Dr. David Chiang
CSE 34331 (in London):
Time
TTh 14:15–15:30
Instructor
Dr. Peter Bui

Fundamental techniques in the design and analysis of non-numerical algorithms and their data structures. Elementary data structures such as lists, stacks, queues; more advanced ones such as priority queues and search trees. Design techniques such as divide-and-conquer. Sorting and searching and graph algorithms.

Prerequisite: CSE 20212, Fundamentals of Computing II.

Goals

This course is about the data structures and algorithms that are the core of computer science and the building blocks for nearly every computer program you will write. Upon successful completion of this course, you will know these data structures inside and out:

  • Inside: You will be able to analyze the performance of data structures in order to select the right one for each situation, as well as create or extend data structures to fit new situations.
  • Outside: You will be able to combine data structures to solve real world problems, employing abstractions to make them work together cleanly and safely.