Instructor: Rolf Lakaemper
Office Hours: Tuesday after class (4pm - 6pm) or by appointment or just come in, room 313 Wachman Hall.
Phone: 215 204 7996
TA and PEER TEACHER (!): Pauline Romas, email: email@example.com
DATA STRUCTURES, and DESIGN using Java 5.0 Edition, By Koffman/Wolfgang, Wiley,
Slides used in the lectures will be found here:
Lab-Assignments are located here:
You'll find a wonderful log about the classes here (courtesy of Pauline Romas)
The class log will be very helpful for you to review the topics we dealt with. Please take some time to read it !
Quizzes are here:
Syllabus and remarks
The course introduces basic data structures, like linked lists, stacks, queues, trees and sets.
Applications given as JAVA programing assignments will motivate the need for these abstract
data types to implement algorithms efficiently.
The second part of will introduce important algorithms which build the basis of many applications.
Among these concepts will be recursion, sorting algorithms (insertion sort, mergesort, heapsort, quicksort),
and algorithms to traverse or organize data structures (balancing trees).
Although the course is not an introduction to JAVA programming, JAVA will be used as an example for
a modern, object oriented language. Concepts of event driven programming, graphical user interfaces
and custom drawing will be combined with algorithms and data structures tought to program small
projects like basic graphic editors, fractal trees etc. The course will closely follow the structure of the textbook.
This course continues CIS067, prerequisites are CIS 66 and CIS 67 with grade of C or better.
What is expected of you:
- You must attend class and the scheduled laboratory section for this course and do assigned readings.
- You must complete all of the assigned laboratory projects in a
timely fashion. All lab assignments should be emailed to your lab instructor
before lab on the day they are due. Labs turned in after lab begins will be
considered late! Your grade of a late lab will be 60% (max. 6 points) of a timely submission.
- You must plan to spend time outside of the scheduled laboratory working
on your programs. Often, students find they need 10 or more additional hours
outside of lab to complete the assignments. You should check the web site for
this course at least once a week to see any hints,
instructions or updates to assignments. I will update assignments or add hints due to feedback from you.
So, if there's a problem, contact me or Pauline!
Your grade will be based on a combination of exam scores, quizzes, lab
grades, class work and assignments:
- There will be weekly quizzes given on Tuesday. These will count 20% of your grade.
- There’ll be extra points during class, counting as mini quiz points
- There will be one mid-term examination: 20%
- There will be a final examination: 30%
- Lab assignment grades will count 30%
A special rule overrides the average score: your average score is only valid if the final exam as well as the
total lab assignment grade does not differ more than 3 grade steps (a grade step is e.g. A to A-). Example:
If your average score is A-, your final AND lab grade has to be at least B-. If for example your lab score is
A, but the final is C- only, then your final score would be down graded from A- to B-, which is the best
score 3 steps away from your final exam grade. This ensures that you MUST understand the class topics in
theory(final) AND practical application (lab).
It is okay to work together to discuss a problem and get ideas for its solution. However, everyone
is responsible for doing his/her final design for a problem and for its program
solution. It is plagiarism to turn in someone else's work as your own. If you
are caught doing this (with or without the other person's permission), you may
receive a failing grade for the course.
Any student who has a need for accomodation based on the
impact of a disability should contact me privately to discuss the specific
situation as soon as possible. Contact Disability Resources and Services at
215-204-1280 in Room 100, Ritter Annex to coordinate
reasonable accomodations for students with documented