This core computer science course covers the workings of data structures and algorithms, from mathematical principles to implementation in C++. Topics include trees and graphs, hashing, greedy algorithms, abstract data types, object-oriented design, regular expressions, context-free grammars, and theoretical (mathematical) models of computation.
The objective of the course is to refine and extend the concepts and practical skills introduced in CSS 342.
The subject matter is highly technical so plan to put in considerable time and effort to master the material. Expect to spend 10-15 hours per week or more outside the classroom.
Prerequisite: CSS 342 with a grade of 2.0 or better
See the course syllabus for further information.Announcements will be posted to the course Canvas page.
Submit assignments via the course Canvas page (zip or compressed tarballs only, please).