This is an undergraduate course in basic data structures and algorithms.

This course is an introduction to data structures such as lists, stacks,
queues, and binary trees, the algorithms that manipulate these data structures,
and some informal analysis techniques for estimating the performance of both
data structures and algorithms. Prerequisites are MA 120 (Discrete Math) and
either CS 176 (Introduction to Computer Science II) or CS 275 (Introduction to
an Algorithmic Language).

The class is divided into five three-week sections. See the syllabus for details.

The class meets in Howard Hall L512 (Go past Howard Hall to Pollak Auditorium;
make a left at the Auditorium doors; L512 is the lecture hall just after the
Box Office) on Tuesdays and Thursdays from 1:00 to 2:50 p.m. Wednesday, 5
November, is the last day you can withdraw from the class with a W. There will
no be class on Thursday, 27 November (Thanksgiving).

R. Clayton, Howard B-13, rclayton@monmouth.edu, 732 263 5522. My
office hours for CS 305 are from 3:00 to 4 p.m. Tuesdays and Thursdays in
my office. I'm also usually happy to talk to you any time you can catch me;
setting up an appointment is recommended, see
my schedule for available times.

There will be five programming assignments and five tests, one assignment and
test for each of the five sections; see the syllabus for the schedule.

Each programming assignment will be made available on the syllabus at the start of
the associated section. Programming assignments are due three weeks from the
day the assignment is issued. My version of the programming assignment will be
made available on the syllabus after all the assignments have been received.

The final grade is a straight, unweighted average of programming assignment
grades and test grades; each programming-assignment and test grade contributes
one-tenth to your final grade.

The usual grade ranges are in effect:

95

<=

A

90

<=

A-

< 95

86.6

<=

B+

< 90

83.3

<=

B

< 86.6

80

<=

B-

< 83.3

76.6

<=

C+

< 80

73.3

<=

C

< 76.6

70

<=

C-

< 73.3

60

<=

D

< 70

F

< 60

All grades are kept with one digit of precision to the right of the decimal
point and 0.05 rounded up. No grades are adjusted to a curve; that means, for
example, that 89.9 is always a B+, never an A-.

It's important that you do the readings; I will not read the text to you. My
lectures generally pick out interesting or confusing points in the readings and
expand on them; if you don't do the readings, you'll have a tough time
following the lectures. Plus, every test will contain at least one question
about something we haven't covered in class but is fully covered in the
readings.

You should feel free to send me e-mail. Unless I warn you beforehand, I'll
usually respond within a couple of hours during the usual work days; if I don't
respond within a day, resend the message.

Mail relevant to the seminar will be stored in a
hyper-mail
archive. If your message is of general interest to the seminar, I'll store
it, suitably stripped of identification and along with my answer, in the
archive.

People who need assistance or accommodations above and beyond what is usually
provided in class should contact the University's ADA/504 coordinator to get
those needs met. See me or the
Disability Services page
for more details.

I have no class attendance policy; you may attend class or not as you see fit.
However, I hold you responsible for knowing everything that goes on in class;
"I wasn't in class for that." is not an acceptable excuse for a wrong
answer, or for giving no answer at all.

My attendance policy applies only to lecture attendance; it does not apply to
other kinds of attendance which may be required for the course. Repeated
failures to meet the attendance expectations set for tests, meetings, projects,
labs or other forms of course work will have a bad influence on your grade.

Monmouth University does have a class attendance policy, which you can find
in the Academic Information chapter of the Student Handbook. To the extent
that I need to keep the record straight, I will take attendance. Attendance
lists, however, are entirely for the University's benefit; I will make no use
of them in grading.

I deal with suspected cheating by failing first and asking questions later.
Although cheating has many forms, I generally consider cheating to be any
attempt to claim someone else's work as your own; also, I consider both the
provider and the user of the work guilty of cheating. See the chapters on
Academic Information and the Student Code of Conduct in the Student Handbook
for more details.

I recognize and encourage a student's sacred right to complain about their
grade. There are, however, a few rules under which such complaining should
take place, and those students who don't follow the rules will be less
successful in their complaints than those students who do follow the rules.

First, the only complaint that matters is that something got marked wrong when
it was actually right. When you come to complain, be prepared to present, in
explicit detail, what it is you did and why you think it's right.

Second, complaints about a particular test or assignment are only valid until
the next test or assignment is due; after that point the book is permanently
closed on all previous test or assignment grades.

Assignments must be turned in by their due date; assignments turned in after
their due date are late. You should contact me as soon as possible if you need
to negotiate a due-date extension. The longer you wait to negotiate, the less
likely it is you'll be successful; in particular, you have almost no chance of
getting an extension if you try for one the day before the due date, and you
have no chance of getting an extention on the due date.

A late assignment is penalized five points a day for each day it's late. I use
a 24-hour clock running from midnight to midnight to measure days; note this
means that an assignment handed in the day after it's due is penalized ten
points: five for the day it was due and five for the next day.

There may occasionally be a conflict between taking a test and doing something
else, particularly among those working full time. If you're going to be out of
town, or on jury duty, or whatever, on a test day, let me know beforehand and
we'll discuss a make-up test.

A make-up test must be scheduled to be taken by the date of the test following
the missed test (or the final exam if you miss the last test). If a missed
test is not made up by the time of the next test, you get a zero for the missed
test.

There will be only one make up given per missed test. If more than one person
misses the same test, those people will have to coordinate among themselves to
pick a mutually agreeable date for the make up.