CS 200 revisits and extends the principles of programming and discrete math concepts that are introduced in CS 161 and applies them to the development, analysis, and implementation of data structures and efficient software. The course is taught using the Java Programming Language and an Object Oriented approach to data structures and algorithms. Specific topics in data structures/algorithms include advanced sorting, queues, stacks, hash tables, trees, and graphs. Advanced topics from theory include complexity analysis, relations, and mathematical induction.

Extensive practice through programming exercises and written assignments that explore discrete math concepts are principal activities of the course.

News: newest on top (it’s a stack :)

  • There will be no extra credit.
  • Please evaluate the GTA who runs your recitation: https://www.surveymonkey.com/r/Y276VWJ
  • No recitations the week of the Midterm, March 7–11.
  • Swapnil’s office hours have changed. See the syllabus.
  • CSU is closed because of snow Tuesday, February 2nd. The deadline for P1 is now one day later: due 11:59pm Thursday, late 11:59pm Friday.
  • No labs the first week, January 18-22
  • The course books (Prichard and Rosen) are on reserve in the Morgan Library.
  • Welcome to CS 200!