CMSC 162
Professor, office, and hours:
Dr. Robert P. Webber
East Ruffner 332, MF 2 3:30, T 2 - 3, and by
appointment or coincidence. I am not
normally on campus on Thursdays.
Phone 395-2192
Email webberrp@longwood.edu
Text: Malik, Data Structures Using C++, 2/e. Course Technology, 2010
Goals for the course:
·
Demonstrate
programming proficiency using recursion, stacks, queues, linked lists, and
trees.
·
Understand
encapsulation, inheritance, and polymorphism.
·
Understand and be
able to explain basic searching and sorting algorithms.
·
Use classes and
template classes.
Description of the course: The course description is given in the
college catalog.
Course requirements:
Test and exam @15% . . . . . . 30%
Labs . . . . . . . . . . . . . . . . . . . 35%
Programs . . . . . . . . . . . .
. . . 35%
Labs: Students will work on groups in the closed
lab on Tuesdays. Hand in one report from
the group. All group members should sign
it, and all will receive the same grade.
Each lab will have a due date.
Lab reports are due by the beginning of the class on the due date, and
papers that are late for any reason will be penalized 25%
per class day or fraction thereof late.
Programs: These exercises will be done out of class and
individually. They are open book. You may work together to figure out how to do
a program and debug errors, but each person must write his or her own code. In general, you can collaborate on the logic
of the algorithm, but not on the code itself.
Each programming assignment will have a due date, and the assignment is
due by the start of class on the due date.
Assignments that are late for any reason will be penalized 25%
per class day or fraction thereof late.
Submit your programming assignment in printed form (not
electronically!) For each program,
submit
·
Documentation
explaining the algorithm. Documentation standards will be distributed.
·
Program
code.
·
An account of
testing, including test data used and printed output showing the results
obtained.
Your program must compile and run before I will grade it. A grading rubric will be distributed.
Homework: The text has lots of drill and practice
exercises. These will be assigned
regularly, and you are expected to do them.
I will be happy to answer questions about them, but they will not be
collected or graded without warning.
Homework problems are your responsibility to do. Feel free to work with others on these
problems.
Attendance: Expected at all classes. Do not leave in the middle of a class,
because that is disruptive. Get your
drink of water and make your calls before or after, not during, class!
Extensions on lab and programming assignments will not be given. If you cannot be at a class when an
assignment is due, send the assignment with someone else.
Makeup tests will be given reluctantly, and only upon presentation of a
doctors excuse. Regardless of the
reason for missing, makeup tests are always more difficult than regular tests.
Honor code: The teacher subscribes to the Longwood honor
code and assumes that you do, too. Any
infraction of the honor code will be dealt with harshly. In particular, conviction of an honor offense
involving this course will mean an automatic course grade of F, in addition
to any penalties imposed by the
Tentative outline and schedule: All chapter references are to Maliks
book.
Week
|
Dates
|
Sections and topics
|
|
|
|
|
|
1 |
Jan 19 21 |
Chapter 1: Classes |
|
2 |
Jan 24 28 |
Chapters 1, 2: Classes |
|
3 |
Jan 31 Feb 4 |
Chapter 3: Pointers |
|
4 |
Feb 7 11 |
Chapter 4: STL container vector |
|
5 |
Feb 14 18 |
Chapter 5: Linked lists |
|
6 |
Feb 21 25 |
Chapter 6: Recursion |
|
7 |
Feb 28 Mar 4 |
Chapter 7: Stacks |
|
8 |
Mar 7 11 |
Chapter 8: Queues |
|
|
|
Spring break
|
|
9 |
Mar 21 25 |
Catch up, review, TEST |
|
10 |
Mar 28 Apr 1 |
Chapter 9: Searching and hashing |
|
11 |
Apr 4 8 |
Chapter 10: Sorting |
|
12 |
Apr 11 15 |
Chapter 11: Trees |
|
13 |
Apr 18 22 |
Chapter 12: Graphs |
|
14 |
Apr 25 29 |
Catch up and review |
|
|
TBA |
Final exam (may be all or partly oral) |