CSCI 2270 Data Structures
Fall 2005
Karl Winklmann
 

 

  1. Thank you ...

    ... for all the hard work put in this semester.

    Posted: Wednesday, December 14, 2005

  1. Final solutions are posted.

    Posted: Monday, December 12, 2005

 

 
 

CSCI 2270 Home page

 
 
 

This page is on the web at www.cs.colorado.edu/~karl/2270.fall05. Programming examples are at www.cs.colorado.edu/~karl/2270.fall05/Programs.

Staff

Instructor

Karl Winklmann, ECOT 725, karl@cs.colorado.edu, phone 303-492-6380. Office hours Monday 2:10-2:50, Tuesday 12:45-1:30, and Friday 2:10-2:50. Feel free to make appointments at other times (email works best for making appointments). For short questions, it is probably most convenient to catch me before or after class in the classroom.

Teaching Assistant

Stephen Davies. Office hours on Tuesdays from 4pm-6pm in ECCS 128 and by appointment made by email.

Textbook

Michael Main and Walter Savitch, Data Structures and Other Objects Using C++, Third Edition, Addison Wesley.

Schedule and syllabus

Week Class topics + reading assignments Recitations Programming Assignments

1. August 23/25 Overview.
Objects and classes.
Logistics.
Basics of Unix.
Assignment 1 posted (involving classes and objects).
2. Aug 30/Sep 1 Objects and classes, continued.
Read Chapter 2.
Working on Assignment 1.
3. September 6/8 Container classes.
Read Chapter 3.
Finishing Assignment 1. Assignment 1 due Friday, September 9.
Assignment 2 posted (involving container classes).
4. September 13/15 Dynamic arrays.
Read Chapter 4, Section 4.1-4.4.
Working on Assignment 2.
5. September 20/22 Pointers and linked lists.
Read Chapter 5.
Finishing Assignment 2. Assignment 2 due Friday, September 23.
Assignment 3 posted (involving linked lists).
6. September 27/29 Stacks and queues (Chapters 7 and 8).
Recursion and trees (Chapters 9 and 10).
Working on Assignment 3.
7. October 4/6 Recursion and trees, continued. Parse trees. Finishing Assignment 3. Assignment 3 due Friday, October 7.
Assignment 4 posted (involving more linked lists).
8. October 11 (Fall Break on October 13 and 14) Sample exam problems. (Fall Break)
9. October 18/20 Tuesday, October 18, Midterm Exam (about linked lists).
Thursday, October 20, Heapsort (Sections 11.1 and 13.3).
Working on Assignment 4.
10. October 25/27 Binary search trees. Finishing Assignment 4. Assignment 4 due Friday, October 28. Assignment 5 posted (involving trees).
11. November 1/3 Binary search trees, continued.
Various sorting algorithms (Chapter 13).
Working on Assignment 5.
12. November 8/10 Various sorting algorithms, continued.
Limits on sorting.
Linear-time sorting
.
Working on Assignment 5.
13. November 15/17 Hash tables (Sections 12.2 and 12.3).
Graphs (Chapter 15).
Finishing Assignment 5. Assignment 5 due Friday, November 18. [Earlier, incorrectly, posted as due on November 11.]
Assignment 6 posted (involving graphs).
14. November 22 (Thanksgiving Break on November 24) Graphs, continued. Working on Assignment 6.
15. Nov 29/Dec 1
Course evaluation (Tuesday, November 29). Further topics and review. Finishing Assignment 6. Assignment 6 due Friday, December 2.
16. December 6/8
Further topics and review Sample exam problems.
Final Exam: Monday, December 12, 4:30-7:00PM. The exam takes place in the room where the lectures were held. Here is a sample exam.

Points and grades and such

There are a total of six programming assignments, one midterm and a final.

On the programming assignments and project you are very much encouraged to collaborate but you must write your own code.

The midterm and final are written exams held in the classroom.

Each of the eight pieces (six programming assignments, a midterm, and a final) is worth 100 points. Thus there is a total of 800 points.

Getting 750 or more points guarantees you an A, getting 700 or more points guarantees you at least a B, getting 650 or more points guarantees you at least a C, getting 600 or more points guarantees you at least a D, getting less than 600 points will get you an F.

Collaboration

You are very much encouraged to collaborate, to explain things to each other and help each other get over any problems. But you must write your own entire program. There is one exception to this rule: you may copy/modify/use code that is posted on the course web site.

Disabilities

If you qualify for accommodations because of a disability, please give me a letter from Disability Services so that your needs can be taken care of.

Religious observances

If there is a conflict between a religious holiday and the class schedule please let me know beforehand. For reference, here is the campus policy on this matter.

Other university policies

Please acquaint yourself with the following pages ...  


© 2005 Karl Winklmann 4:44 PM, Wednesday, December 14, 2005