CSE 331 Algorithms and Data Structures

URL:              http://www.cse.msu.edu/~cse331/

Lecture:          Section 1: Tu Th 10:20am-11:40am, 2243 Engineering Building

Section 2: Tu Th 3:00pm-4:20pm, C133 Holden Hall

Instructor:      Li Xiao, 517-353-4386
Office Hours: Tu Th 11:40am-12:10pm, 4:20pm-4:50pm, or by appointment, 1128EB

TA:                Kaixiang Lin, Zhiwei Wang
Office Hours: Mon 1:40-2:40pm, Tu 4:30-5:30pm, Wed 3:00-4:00pm, Th 5:00-6:00pm, 3203 EB

Data Structures and Algorithm Analysis in C++ (4th Edition), by Mark A. Weiss, Prentice Hall

In this course, students will survey fundamental data structures and many associated algorithms. Study of classical abstract data types (ADT) will be fairly comprehensive. Emphasis will be placed on matching the appropriate data structures and algorithms to application problems. Analysis of algorithms is crucial to making proper selections, so analysis is important in the course. This course assumes that students are already familiar with advanced programming techniques including the definition of classes, and use of dynamic memory and linked data structures, including lists and trees. Even though the treatment of algorithms and data structures is mostly conceptual, students are expected to be able to transform these algorithms and data structures into programs with proper approaches of software module development.

Course Syllabus

Lecture Slides

Course Assignments

Exam Information


Handin for assignment submission

D2L for your grades

Piazza for Q/A