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 doctor’s 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 Honor Court.

 

 

Tentative outline and schedule:  All chapter references are to Malik’s 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)