Data Structures

CSCI-UA 0102-001 (Honors), 002
Tuesday and Thursday, 2:00-3:15
Room WWH 102
Professor Ernest Davis

Reaching Me


Students who are taking this course for honors should register for section 001. Students who are not should register for section 002.


The recitation section is section 003 of this course: CSCI-UA.0102-003. It will meet Thursdays, 3:30-4:45, WWH 101. The instructor is Azam Asl. Be sure to register for this section in addition to 001/002.

Azam will hold office hours Tuesday, 3:30-4:30, Warren Weaver 328.

Prerequisites: CSCI-UA 0101, Introduction to Computer Science

Required Textbook: Data Structures and Algorithm Analysis in Java by Mark Allen Weiss, Addison Wesley.



Weekly homeworks (10%)
Programming assignments (30%)
Midterm exam (20%)
Final exam (40%)

Submitting Assignments

Homework assignments should be emailed to Azam Asl, aa2821 at nyu dot edu, in either PDF, Word, or plain text. The subject should be "Data_Structures_Problem_Set_N", substituting the number for N. Honors versions of the problem set should have the subject "DSHonors_Problem_Set_N". Be sure to include your name at the top of the submission. Homework assignments will not be collected in class.

Programming assignments should be emailed to Ashish Singla, as5396 at nyu dot edu. Generally, these will just be one or more java files. The subject should be "Data_Structures_Assignment_N". Honors versions of the problem set should have the subject "DSHonors_Assignment_N". Be sure to include your name as a comment at the top of the submission.

All assignments are due at the start of the class period on the due date. Homework assignments will be accepted late until the next class meeting (that is, if they are due on a Tuesday, they will be accepted until Thursday, and vice versa.) Programming assignments will be accepted up to one week late. Any late submission will have a penalty of 1 point out of 10.

Grading of Programming Assignments

In general, the programming assignments will be graded on the following basis: Individual assignments may specify further, or different, grading criteria.


Students taking the course for honors will be required to complete additional problems on the homeworks and more challenging forms of the programming assignments.

Sample Code

Lecture Notes

Java Notes Additional help with Java, by Fred Swartz. Azam recommends this site.

Class email list

Link to the class email web page and follow the instructions there for subscribing.


Mid-term exam

The mid-term exam will be Thursday, Oct. 13, in class.
Outline of mid-term exam
Sample mid-term
Solutions to sample mid-term

Final exam

The final exam will be given Tuesday, Dec. 20, 2:00-3:50 in room 102.
Outline of final exam
Objects, References, etc.
Sample questions from the second half of the course.
Solutions to sample questions from the second half of the course.


You may discuss any of the assignments with your classmates (or anyone else) but all work for all assignments must be entirely your own. Any sharing or copying of assignments will be considered cheating. By the rules of the College of Arts and Science, I am required to report any incidents of cheating to the department. My policy is that the first incident of cheating will result in the student getting a grade of F for the course. The second incident, by CAS rules, will result in a one-semester suspension from the College.