Course Organizer
COP 4531 Complexity and Analysis of Data Structures and Algorithms
Fall Semester 2009
Root View: Course Components Syllabus
jumpThe course syllabus establishes course policies on grading, attendance, and exams. The syllabus should be read in detail at beginning semester. Calendar
jumpThe course calendar provides a detailed temporal view of the course, including lecture coverage, assignments, and due dates. The calendar will be updated regularly. Lectures
new windowLectures are in the form of a slide show with an accompanying narrative. (Click "Narrative on" to see the narrative. Click "Frames[Windows]" to toggle between displaying the narrative in a separate frame or a separate resizeable window.) Lectures provide a compact view of the important topics of the course. They also serve to gound the text material in a real programming environment. Lecture slides and narrative will be created "on the fly" during the semester, so you should visit them regularly. Report bugs/corrections in the appropriate Blackboard discussion forum. Assignments
new windowAssignments will be released through the Calendar. You need the specific file name appended to this URL. See also Submitting Assignments (below) and Grading Assignments. My FSU
new windowThe FSU/Blackboard Portal, where you will find this course. The course site is the main communication resource for the class. Here you can get help, talk to other students, retrieve your grades, and generally keep up with course news and announcements. Textbook
new windowThe textbook for the course is Cormen, T.H., et al, Introduction to Algorithms (2nd ed.), New York, McGraw-Hill, 2001. The textbook provides many details and extra material not covered directly in the notes, as well as a more mathematical treatment of algorithms. Reading and understanding the assigned portions of the text is essential for deeper understanding of many topics in the course. Report bugs/corrections in the appropriate Blackboard discussion forum and to the authors.
Extras: Miscellaneous Resources and References COP 3330
COP 4530Lecture notes from previous courses in the sequence C++ Style Coding style manual for this course Make1
Make2Two tutorials on the make utility and makefiles Stats The NIST Engineering Statistics Handbook TreeDemo1
TreeDemo2Nifty demonstrators for various binary search tree implementations FAQ Frequently asked questions on nuts and bolts of programming in C++ and compiling using g++, ld, and make
Temporal View: Course Calendar Week Dates Course Notes Chapters Text Chapters Assignments Due Date 1 8/24 - 8/30 1: Introduction
2: sContainers
Activate CS Account
Assignment 0: Portfolio Creation
9/6 2 8/31 - 9/6 3: Algorithms
4: ADTs, Stacks, Queues
1, 2, 3 Review notes chapters on templates, vectors, lists, and deques from COP 4530
9/6
3 9/7 - 9/13 5: Function Objects
6: Iterators
7: Generic Algorithms
8: Generic Set Algorithms
Project 1: Generic Set Algorithms 9/20 4 9/14 - 9/20 9: Heaps
6 5 9/21 - 9/27 10: Sorting
7, 8.1, 8.2 Project 2: Sortmania
I. Code
II. Report
10/11
11/15
6 9/28 - 10/4 11: Generic Associative Containers
12: Set and Map Abstractions
13: Hashing
14: Tables
11 (emphasize chaining) 7 10/5 - 10/11 15: Binary Trees and Iterators
16: Binary Tree Construction
10 Project 3: Tree Traveller 11/1 8 10/12 - 10/18 Midterm Exam: See Syllabus for exact dates 9 10/19- 10/25 17: Associative Binary Trees
12 10 10/26 - 11/1 Dense Trees Demo1 Demo2 13 Project 4: Ordered Sets
11/22
11 11/2 - 11/8 18: Graphs and Digraphs
22.1 - 22.4 Project 5: Topological Sort
12/6 12 11/9 - 11/15 23 13 11/16 - 11/22 Review / Projects 24, 25 14 11/23 - 11/29 Happy Thanksgiving! 24, 25 15 11/30 - 12/6 Review / Projects 16 12/7 - 12/11 Final Exam: See Syllabus for exact dates Ω 12/14 - 1/1 Semester Break - you've completed a capstone course!
Unix Script Submission Process:
Most programming assignments will be submitted via a specific Unix script from your CS Majors account logged in to shell.cs.fsu.edu. Submission scripts will be located in the directory ~cop4531p/fall07/submitscripts/. Availability of these scripts will be announced in the assignment document.
Submission via script should generate two email responses:
- When your submission is received, a receipt is sent via email. The date/time stamp of this email is the official submission time.
- After your submission has been unpacked and placed in your portfolio, a second message is sent containing a copy of all files that were unpacked. This is a record of exactly what was received and placed in your portfolio.
After submission, be sure to check your email for these two messages. Normally these would arrive within a few seconds of submission. If you do not get both email responses, a malfunction occurred. When you do receive these confirmation emails, save them. If a problem were to arise with your files, these emails are your proof of submission.
Note that revisions may be submitted any time prior to the deadline and will automatically replace the previous submission.