CSSE 250 Data Structures
Spring 2009
Location: Engr 312
Time: Tue-Thur-Fri 8:15-9:40 am
Instructor: |
Dr. R.
Roshandel |
Office: |
Engr 507, Phone: (206) 296-5512 |
Office Hours: |
1:00-2:00 pm M,T,W,TH
|
|
|
10:00-11:30 am F |
|
|
Also by appointment |
Note: These
office hours are dedicated times to help you with course material. I am always
available to answer your questions in person or via email. Moreover, I have an
open door policy and you may stop by anytime.
References
·
C++
reference sites: cppreference.com and cplusplus.com
·
The textbook website (maintained by the
author) is here. You can find a link to the source code for
examples in the text here.
Announcements:
·
5/28/2009
Assignment 6 posted.
·
5/13/2009
Assignment 5 posted.
·
5/5/2009 Sorting Algorithm Animation website
·
4/30/2009
Assignment 4 posted.
·
4/14/2009 Check
the submission instructions for
programming assignments
·
4/8/2009 Check
out the links in the reference section to the book website.
·
3/31/2009
Welcome to CSSE 250!
Tentative
Schedule (This is
subject to change)
|
|
Date |
Topics |
Assignments |
|
Week 1 |
T 03/31 |
||
|
TH 04/2 |
|||
|
F 04/3 |
|||
|
Week 2 |
T 04/7 |
Assignment 1 due |
|
|
TH 04/9 |
Class Template (Ch 9) |
||
|
F 04/10 |
No Class |
||
|
Week 3 |
T 04/14 |
||
|
TH 04/16 |
Assignment 2 due |
||
|
F 04/17 |
|||
|
Week 4 |
T 04/21 |
||
|
TH 04/23 |
Binary search trees (BST) (Ch 12) Exam Review |
Assignment 3 due |
|
|
F 04/24 |
Exam 1 |
||
|
Week 5 |
T 04/28 |
||
|
TH 04/30 |
(Hashing Ch 12) |
||
|
F 05/1 |
|||
|
Week 6 |
T 05/5 |
||
|
TH 05/7 |
|||
|
F 05/8 |
|||
|
Week 7 |
T 05/12 |
Assignment 4 due |
|
|
TH 05/14 |
|||
|
F 05/15 |
|||
|
Week 8 |
T 05/19 |
Exam Review |
|
|
TH 05/21 |
Exam 2 |
||
|
F 05/22 |
No Class! |
||
|
Week 9 |
T 05/26 |
Assignment 5 due |
|
|
TH 05/28 |
|||
|
F 05/29 |
|||
|
Week 10 |
T 06/2 |
||
|
TH 06/4 |
|||
|
F 06/5 |
Assignment 6 due |
||
|
|
W 06/10 |
Final Exam |
8:00-9:50AM |
Abstract data types. Big-Oh notation. Heaps, Sorting (Quicksort, Mergesort, Heapsort), Binary search trees, tree balancing techniques, and hashing. Additional topics may include B trees.
Achievement of catalog description as well as the design, development and construction of large programs that involve the use of several different data structures and require the use of external libraries.
· A grade of C or better in CSSE 152
· Programming skill in a high-level language (C++), familiarity with simple data structures (stacks, queues, lists and trees), recursion, simple sorting and searching algorithms
ADTs, Data Structures, and Problem Solving with C++ (second edition), Larry Nyhoff, Pearson Prentice Hall. ISBN: ISBN: 0-13-140909-3
· Brief review of Stacks, Lists and Queues with class implementation (chapter 4, 6, 7, and 8)
· Templates, standard container, and iterators (chapter 9)
· Big-O notation (chapter 10)
· Binary search trees (insertion, deletion, modification, degenerative form, chapter 12)
· Hashing (key, resolution, tables, functions, chapter 12)
· Sorting (Insertion, Selection, Exchange, Quicksort, Mergesort, Heapsort, chapter 13)
· Heaps and priority queues (chapter 13.2)
· Balanced trees : AVL trees (chapter 15.2)
The class website can be found at: http://fac-staff.seattleu.edu/roshanak/web/teaching/s09/csse250/index.html.
Class attendance is strongly encouraged. Students missing a class are responsible for any material assigned or covered in class during their absence. Students are encouraged to actively participate in class discussions.
|
· Homework Assignments (25%) · Midterm Exams (25%) |
· Final Exam (40%) · Attendance and Quizzes (10%) |
Note: All exams will be closed book and closed notes. Use of calculators, PDAs, cell phones, laptops, and other electronic devices is not permitted during the exam. Failure to appear for Exams 1 and 2 will result in a zero for that exam. Failure to appear at the final will result in a failing grade for the entire course. The final exam is cumulative and you need to receive a grade C or better in the final exam, in order to pass the course. Makeup exams will only be given in extraordinary circumstances and may be given in oral form at the discretion of the instructor. The grading scale varies based for different exams and assignments but it will conform to the following:
· 90% or more: A- or better
· 80% or more: B- or better
· 72% or more: C or better
· 60% or more: D or better
· Below 60%: F
· Assignments/homework must be turned in by the beginning (8:15 AM) of the class on the due date.
· No late submission is accepted.
· Hardcopies are required in all submissions. Electronic copies are not accepted!
· The programming assignments will be graded on documentations and functionality.
· No online solutions are posted. Questions and some solutions of the assignments are discussed in class.
· Students are responsible for all materials covered in class.
· Turn off all cellphones, pagers, etc.
· If you use a laptop to take notes, make sure all other applications (email, IM, Facebook, etc.) are off during the class.
· Strive for punctuality but if extenuating circumstances cause you to be late, please take a seat at the front of the classroom.
All work submitted for grading must be the student's own work. Plagiarism will result in a score of zero on the test or assignment, or dismissal from the course. Also, the Dean of Students office will be informed.
Plagiarism is the unacknowledged use of the work or intellectual property of other persons, published or unpublished, presented as ones own work. All students are expected to work on all individual assignments independently. Collaboration on individual assignments is considered cheating and will be penalized accordingly. Other examples of behavior that is not tolerated in this class include copying all or part of someone elses work and submitting it as your own, sharing your assignment solution with other students in the class, consulting with another student during an exam, and copying text from published literature without proper attribution. If you have questions about what is allowed, please discuss it with the instructor. All students are responsible for reading and following the Seattle University Academic Honesty Policy. Students who violate University standards of academic honesty are subject to disciplinary sanctions, including failure in the course and suspension from the University. (http://www.seattleu.edu/registrar/page.aspx?ID=87)