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.
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: