This syllabus is subject to change; check weekly for new information.
Professor: James Atlas
Email: jatlas at udel.eduOffice Location: Smith Hall 415
Office Hours: M/W 2:30 - 4PM
Appointments: if you can't make office hours, email me for an appt.
Teaching Assistants: Miao Tang and Zequn (Richard) Huang
Email: miaotang at udel.edu and zehuang at cis.udel.eduOffice Location: Smith 103
TA Office Hours: Miao Tang 3:30-5:50PM Friday, Zequn (Richard) Huang 9:30-11:30AM Tuesday
Our course project number on the composers is TBA. Type 'chdgrp' in a Unix shell to see your balances, or go to www.udel.edu/network and select Change Default Group.
Topics
- Pointers
- Lists
- Analysis/Big-O notation
- Recursion
- Stacks
- Queues
- Trees
- Sorting
- Heaps
- Graphs
- NP-completeness
- Hashing
Lectures
- Slides
- Example code from class
Useful Links
Important dates, subject to change:
March 17 | Midterm 1 |
April 28 | Midterm 2 |
Final | TBD |
Grade Breakdown
Percent of grade | |
Two midterms | 10 + 10 |
Final | 20 |
Homeworks (10) | 35 |
Projects (2) | 20 |
Participation | 5 |
Total | 100 |
Grade Scale
Number |
100-93 |
93-90 |
90-87 |
87-83 |
83-80 |
80-77 |
77-73 |
73-70 |
70-67 |
67-63 |
63-60 |
<60 |
Letter |
A |
A- |
B+ |
B |
B- |
C+ |
C |
C- |
D+ |
D |
D- |
F |
If you have a disability that requires special accommodation, please contact me by email during the first week of class.
NOTE: Students are required to attend ALL lab sessions. Submitted work must be submitted no later than 11:55pm on the date it is due. Assignments that are late are assessed a 10% per day late penalty, and after three days they will not be accepted. Saturday and Sunday are each days. This policy is necessary because late assignments are burdensome for the TA, both in terms of separate handling and separate time grading.
NOTE: Students are required to attend ALL lectures. I may make announcements in class that I do not post on the website. I will put lecture slides on the web, but these are not a substitute for class notes. Many classes will have no lecture slides because we will be coding. It is your responsibility to get the notes from any lecture you miss from another student (not your instructor, and not your TA). Lecture material is critical for projects and exams, and useful everywhere else.
Your participation grade is based (surprise!) on your participation in lecture and on your contribution to group exercises during class.
A Note About Programming Conventions
Every organization that writes code (and does it well) subscribes to a set of conventions for naming variables, commenting, formatting, etc.
You will need to follow the C++ coding style used in the course textbook, an example can be found in Listing 1.4,5,6 on pages 83-93 in Koffman and Wolfgang.
Your Right to See and Question Your Grades
Students have a right to receive their graded assignments in a timely fashion. That said, remember that your TAs are students too, and have deadlines in other courses. The instructor and TAs will endeavor to get all assignments back to students within ten days of the submission date. If this date is not met, please bring it to the attention of the instructor.All students have the right to know how their grades are calculated, and if any student believes a mistake has been made, it is up to the student to contact the grader to discuss it within ONE WEEK of the return of the assignment. Contact the TA first for labs, homework, and projects. If you are not satisfied after discussing the grade with the TA, then you may bring it to the instructor. Bring exams directly to the instructor.
The grade percentages are on this syllabus. Please use them to calculate estimates of your semester grade. This class typically has little or no curve.
Academic Honesty
I expect you to observe the highest ethical standards, avoiding even the perception of ethical compromise. You are expected to do your own work unless explicitly instructed otherwise. This includes programming projects, labs, quizzes, and examinations. All violations of academic honesty will be handled according to University policy.In addition, copying another person's work without proper acknowledgment is plagiarism, a serious offense, and the one most common to computer science courses. Anyone that aids another student with work that is expected to be done without collaboration is as guilty as the person who seeks help. Both will be prosecuted. It is strongly recommended that you familiarize yourself with the University's Policy of Academic Dishonesty found in The Official Student Handbook.
Any student who in any way facilitates another student's access to someone else's classwork is cheating, whether the classwork is written, electronic, verbal, or any other form.
Furthermore, there have been rare instances of people claiming that their work was stolen. In these cases it is very hard to determine if the person gave their work to someone else, or if it was taken without their permission. If there is any doubt, I will always assume that the work was deliberately shared. It is thus your responsibility to safeguard your papers, your passwords, your computers, and any other means by which your work can be copied.
Group or pair work is subject to the same rules, applied between groups or pairs.
All students are required to be familiar with these examples: Academic Honesty Examples