CS285: Data Structures

-->Lab 1
-->Lab 2
-->Lab 3
-->Lab 4
-->Lab 5
-->Lab 6
->Electronic Submission
->Old Exams
->C++ Examples
->MSVC Info
->STL Help
->Book Errata
->Tentative Schedule
->Course Policies


Winter 2001-2002

The course covers fundamentals of data organization and basic algorithms for data manipulation. Topics include arrays, lists, stacks, queues, trees, sets, and hash tables. Fundamentals of algorithm performance are introduced, with an emphasis placed on time complexity analysis. Special emphasis is placed on appropriate use of containers, iterators, and algorithms defined in the C++ standard library. Laboratory assignments involve both the use and implementation of common data structures.


Upon successful completion of this course, the student will:

  • Understand and apply complex data structures and algorithms.
  • Use appropriate algorithms (and associated data structures) to solve complex problems.
  • Have a thorough understanding of the Standard Template Library.
  • Be able to analyze the complexity of algorithms (both sequential and recursive).
  • Understand the use of recursion in problem solving.
  • Be able to use data structures in software design and implementation.
  • Be able to apply the STL in software design.

The above course description and goals were taken from the official course description.

General Course Policies

Please review the general course policies webpage.


Data Structures in C++ Using the Standard Template Library, by Timothy Budd, Addison-Wesley, 1998.

My Schedule

Time Mon Tue Wed Thu Fri
8:00     CS285L CC53    
9:00 CS285 CC53 CS285 CC53
10:00 Office Hour Office Hour CS499 Fac Sen
11:00   Lunch w/ Students* XX
12:00 XX CS285L L104 Office Hour
1:00 DEPT MTG CS285 L104 CS285 L104
2:00   CS182L CC53 Office Hour    
4:00 CS182 CC53 CS182 CC53 CS182 CC53

* I would like to have lunch with you individually or as a group to get to know you better. If we eat in RWJ, housing will pick up my lunch bill. If you would prefer to eat elsewhere, we will each be responsible for our own bill. Feel free to suggest another time if the time above does not work for you.


A quiz will be given at the beginning of each lab period. The lowest quiz score will be dropped. No make-up quizzes will be given.


Unless stated otherwise, all laboratory assignments will be completed in teams of two. One lab report should be submitted for each team. One week lab assignments will be worth half the points of two week lab assignments.




Lab projects:


Mid-Term Exam:


Final exam:




Tentative Schedule

© 2001-2002 Dr. Christopher C. Taylor Office: CC-27C Phone: 277-7339 Last Updated: November 14, 2001
I am responsible for all content posted on these pages; MSOE is welcome to share these opinions but may not want to.