Computer Science Department
Comsc 210: Program Design & Data Structures, Spring 2011, Section 8093
COURSE DESCRIPTION: Techniques relevant to program design and selection of data structures for larger programs.
Topics covered include design techniques, effective use of recursion, algorithmic efficiency
and O-notation, linked lists, binary trees, B-trees, graphs, sorting, and searching
techniques. Extensive programming of a variety of data structures is required. CAN CSCI 24, CSU, UC
Prerequisite: Comsc 265 or equivalent.
Expected student learning outcomes: www.dvc.edu/slos?comsc-210
INSTRUCTOR: Prof. Robert Burns, rburns@dvc.edu Burns office hours: M 4-6pm, FO-227, MW 6-7pm, ATC-115 TOPICS COVERED: Arrays and linked lists
Stacks, queues, priority queues
Hash tables and hashing techniques
Tree structures and heaps
Seaching and sorting records
Abstract data types (ADTs)
Efficiency considerations and big oh
Graphs and digraphs
Recursion using stacks and queues
Traversal and iteration
The C++ Standard Template Library
MEETING DATES AND TIMES: M Jan 24th at 7:00pm - Th May 26th at noon
MW 7:00-9:50pm, ATC-115
Last Day To Add: F Feb 4th
Last Day To Drop with refund: F Feb 4th
Last Day To Drop without "W": Th Feb 17th
Last Day To Drop with "W": F Apr 29th
Holidays: Feb 21, Apr 18 and 20
Midterm exam: W Mar 23rd
Final exam: M May 23rd, 7-9pm
GRADING:
Lab Exercises (15):
750 points
Midterm Exam:
50 points
Final Exam:
50 points
Term Project:
50 points
Online Quizzes (16):
100 points
FINAL GRADE:Strictly applied
A
900-1000 points
B
800-899 points
C
700-799 points
D
600-699 points
F
0-599 points
no extra credit
TEXT, REFERENCES, AND SUPPLIES:
C++: Classes and Data Structures by Childs (required) Introduction To Programming, Using C++ by Burns (recommended) Class website: http://cs.dvc.edu/ Command-line compiler: Visual C++ (avail. in computer lab) Free editors: Pad (Windows) and JNotePad(also avail. in computer lab) Free Windows compiler: Visual C++ 2010 Express Additional supported compilers: UNIX/Linux/MacOSx g++; VC++ 2005, 2008
CLASS POLICY:
Expect to spend about 12 hours per
week on this course listening to lectures, doing labs, and reading.
Lab assignments are posted on the class website.
Lab assignments are due at midnight of the evening
of the due date indicated on the course
outline. Completed lab work must be posted to the class website for credit.
For questions on lab assignments, anytime and anywhere, use the
online discussion group (accessible via links on the class website:
http://cs.dvc.edu/).
Students may post and reply to questions in order to help eachother.
The instructor monitors the discussions and answers questions
when appropriate. Use this method so that all students benefit
from questions, answers, and clarifications.
One point per day will be deducted for each late assignment.
Late work will be accepted until noon on Th May 26th. No credit will be awarded
for any late work after that time.
Contact the instructor by email or visit during office hours.
Arrangements for missed exams must be made
with the instructor in advance. Make-up exams can only be scheduled for
a time period in which the instructor is conducting another exam.
Quizzes are conducted prior the first lecture of a topic, and may be online or in-class, per the instructor's direction.
No make-ups for missed quizzes.
Quizzes cover the material for the indicated chapter's reading assignment in the course outline, and the corresponding lecture notes.
Online quizzes are accessible on the class website via the internet, and require that Javascript be enabled in order to run in your browser.
All quizzes are timed, each allowing a few minutes for 5 or fewer multiple-choice questions.
Students are expected to follow the DVC Student Code of Conduct.
Accordingly, no credit will be given for work that is not original.
Students MUST type their own code, and NOT share code with other students.
Points awarded for lab work that is later found to be not original will be withdrawn.
Points awarded for work that is deleted from the Student File Area before grades
are assigned at the end of the semester will be withdrawn.
Classes start at 7:00pm sharp. Do not trust
classroom clocks -- check the time on the class website home page
(http://cs.dvc.edu/)
which is synchronized to the atomic clock.
EXPECTED STUDENT LEARNING OUTCOMES:
Students completing the course will be able to:
create C++ templates for custom data structures, with the standard operations of insert, replace, retrieve, and remove.
understand the differences among the various search techniques (linear, binary, and binary trees) and can implement all of them.
understand the difference among various O(n log n) sorting algorithms and can implement quick sort, merge sort, Shell sort, and heap sort.
On the first day of class, and then again on finals day, take the survey at www.surveymonkey.com/s/sp2011comsc