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
->Support Forum
->Course Policies


Winter 2002-2003

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       CS182L(2) CC53  
9:00 CS182 CC53 CS182 CC53 CS182 CC53
10:00 Office Hour Office Hour Fac Sen
11:00 Lunch w/ Students* Tech Mtg
12:00 EEC CS285 CC48 CS285L(2) CC48 CS285 CC48
1:00 Dept Mtg   Office Hour
2:00   CS384L(4) CC51    
3:00 CS384 CC51 CS384 CC51 CS384 CC51

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


Midterm Exam:


Final exam:




Tentative Schedule

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