CSCI 2270
Computer Science 2:
Data Structures
Fall 2003
Karl Winklmann
Recent news item(s) :
The winners of the project competition are ...
In first place ...
D. Football Game
and a tie for second place between
E. 3D Graph Path Game, and
K. Distributed Genetic Algorithms.
Congratulations, and thanks to everybody who showed a project. Winners can pick up their book prizes in ECOT 721, now or after the break.
The votes were counted by Nan and Rika.
Tuesday, August 26, 2003
This page is on the web at www.cs.colorado.edu/~karl/2270.fall03/.
This course will cover two subjects:
Damon McCoy. Hours Tuesday 3:30-4:30pm and Friday 5-6pm. In ECCR 1B54/56.
R012 08:00am-09:15am F ECCH 105 Elizabeth White R013 09:30am-10:45am F ECCH 105 Elizabeth White R014 11:00am-12:15pm F ECCH 105 Damon McCoy R015 12:30pm-01:45pm F ECCH 105 Elizabeth White R016 02:00pm-03:15pm F ECCH 105 Damon McCoy R017 03:30pm-04:45pm F ECCH 105 Elizabeth White
| Classes | Class topics + reading assignments | Recitations | Assignments | |
|
| ||||
| 1. | August 26/28 |
Overview.
Objects and classes. Read Chapter 2. |
Logistics.
Basics of Unix. | Assignment 1 handed out (involving classes and objects). |
| 2. | September 2/4 | Objects and classes, continued. | emacs, submission of assignments. | |
| 3. | September 9/11 |
Container classes. Pointers and dynamic arrays. Read Chapter 3 and Chapter 4, Section 4.1-4.4. | Finishing Assignment 1. |
Assignment 1 due Friday, September 12.
Postponed by one week, to September 19.
Assignment 2 handed out (involving container classes). |
| 4. | September 16/18 | Dynamic arrays, continued. | Interactive debugging with gdb. Permissions, RCS. | Assignment 1 due Friday, September 19. |
| 5. | September 23/25 |
Pointers and linked lists. Read Chapter 5. | Finishing Assignment 2. |
Assignment 2 due Friday, September 26.
Assignment 3 handed out (involving linked lists). |
| 6. | September 30 (Fall Break on October 2) |
Queues, stacks and trees. Covered in Chapters 7-10. |
No recitations this week, because of Fall Break. (Earlier posting was incorrect.) | |
| 7. | October 7/9 |
Parse trees.
Recursion. | Finishing Assignment 3. |
Assignment 3 due Friday, October 10.
Assignment 4 handed out (involving trees). |
| 8. | October 14/16 |
Recursive tree drawing.
Binary search trees (Section 10.5). |
TBA | |
| 9. | October 21/23 |
Heapsort (Sections 11.1 and 13.3).
|
Finishing Assignment 4.
Sample exam problems. | Assignment 4 due Friday, October 24. (not Oct 23, as listed earlier) |
| 10. | October 28/30 |
Tuesday, October 28,
Midterm Exam
(about dynamic arrays, linked lists, heaps trees).
Graphs (Chapter 15). |
Lab exam 1 (extensions to Assignment 4). | Assignment 5 handed out (involving graphs). |
| 11. | November 4/6 |
Graphs, continued.
Discussion of Assignment 5. |
TBA | |
| 12. | November 11/13 | Various sorting algorithms (Chapter 13). | Finishing Assignment 5. |
Assignment 5 due Friday, November 14.
Project handed out. |
| 13. | November 18/20 |
Linear-time sorting.
Hash tables (Sections 12.2 and 12.3). |
Lab exam 2 (extensions to Assignment 5). | Project description due Friday, November 21. |
| 14. | November 25 (Thanksgiving Break on November 27) | Limits on sorting. | Recitations to be held on Wednesday. Work on project. | |
| 15. |
December 2/4
|
Demos and review. | Finishing project. | Project due Friday, December 5. (not Dec 4, as listed earlier) |
| 16. |
December 9/11
|
Demos and review, continued. | ||
| Final Exam Monday, December 15, 4:30-7:00pm. The exam takes place in the room where the lectures were held. | ||||
|
| ||||
On the programming assignments and project you are very much encouraged to collaborate but you must write your own code.
In the two "lab exams" you will have to do some programming problems in your recitation and turn in your work at the end. The programming problems are always extensions of the previous programming assignment.
The midterm and final are written exams held in the classroom.
Each of the ten pieces (five programming assignments, one project, two lab exams, a midterm, and a final) is worth 100 points. Thus there is a total of 1000 points.
Getting 900 or more points guarantees you an A, getting 800 or more points guarantees you at least a B, getting 700 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.
+/- grades will be given to raise some grades.
| © 2003 Karl Winklmann | 3:08 PM, Tuesday, December 16, 2003 |