Data Structures - 2009a

Programming Exercises


Announcements

28/02/09   The ex2 appeals period has been exteneded until 4/3/09.
25/02/09   The grades file is updated with the final grades after all of the appeals.
Good Luck with the exam!


17/02/09   The checked hardcopies of ex2 are in room 114 in Schreiber.
14/02/09   The grades for assignment 2 and the automatic testing code are now published in the "Grading" section. The hardcopies will be returned to room 114 soon (maybe tomorrow and definitely by the end of the week - another announcement will be posted). Appeals on the automatic check should be submitted within 10 days from now.

06/02/09   The last checked hardcopies of ex1 are in room 114 in Schreiber.
04/02/09   All of the exercises (assignment 1) that were wrongly submitted to Michael's or Danny's mailbox, all of the appeals,
-------------- and even all of the exercises that still didn't have the right permissions the last time, have been checked and updated in the grades file.
27/01/09   A few more appeals have been updated in the grades file.
26/01/09   The grades file has been updated and now includes grades for everyone who set the right permissions in their account up until this moment.
-------------- Some of the appeals have been updated too. If you submit an apeal on time (within 10 days of your grade's publication) you will get answered, so don't worry about it.
-------------- As for the students who submitted their exercises to the wrong mailbox, your grades will be published next week.

24/01/09   The ex2 hardcopies should be submitted to mailbox #308 on the first floor in Schreiber.

23/01/09   Please make sure you read the whole webpage before you send me (or anyone else from the course staff) an email.
-------------- And before you bother any of the other course staff with project issues, I recommend you to come to me first - I won't bite you.
-------------- And to the students who didn't get a grade because of permission problems: follow the "How to sumbit?" instructions and set the right permissions until sunday noon.
-------------- I will go through your projects once more and for the last time. If your permissions are not set correctly by the next time I check them, your automatic check grade will be zero.
-------------- For your information, it was my intention and initiative from the beggining to give you another chance to correct the permissions - I didn't mean that you have a permanent zero and I asked Danny to deliver you that info in class.

21/01/09   The grades for assignment 1 are now published here in the "Grading" section, along with info about the grading policy.
-------------- Your hardcopies will be returned to room 114 tomorrow- notice that the grades written on the hardcopies are only the manual check grades and are only 50% of the grade for assignment 1.

17/01/09   Do NOT sumbit any of the assignments by email. Use your unix accounts like it was with assignment 1.

09/01/09   There are still many students who didn't set the right permissions for thier assignment #1 files, so I can't check and grade their work.
-------------- Please review the "How to sumbit?" section and do it ASAP (don't worry - changing the permissions doesn't change the files' timestamp).
-------------- You can also use the system helpdesk team to help you out with that.
-------------- If I'll have to approach to you individually about this, it may involve a garde deduction.

06/01/09   Assignment #2 is published. Please read it carefully before starting your work.
-------------- I repeat again: submission is only in pairs and NOT singles. A submission by a single student is not allowed!
-------------- Even if you got permission to submit alone before, you should send me an email about it, NOW, and before you start doing any work.
-------------- (to eranmati@gmail.com)

-------------- Also notice the changes in the "How to sumbit?" section (no folders or nylons).


29/12/08   More info about the unix accounts (used for the softcopy submission) added in the "How to sumbit?" section.
21/12/08   Webpage and assignment 1 updated. Please review them carefully again and re-download the skeleton file, RBTree.java
18/12/08   Webpage is up. Please read the entire website content carefully before starting your work.


General



Procedural Issues
  1. There will be 2 programming assignments during the semester. Each student must submit all assignments in order to be eligible for a final grade.
  2. Submission is in pairs. Submission of an assignment by a single student will not be accepted!
  3. Homework should be submitted on time.
What to sumbit?
  1. The java file with your code.
    Built-in data-structures: You may not use in your implementation any of the built-in java.util data-structure classes (or similar packages)
    Inline comments : The java file should have inline documentation, mainly composed of a reasonable amount of comments (when needed).
    Code readability : Pay attention to things like variable names (call a variable start, not s ), line length (no lines spilling over to the next line!)
  2. A documentation file. The file name should be ex1.doc for the first exercise, and ex2.doc for the 2nd exercise.
  3. The documentation file should contain :
How to sumbit?
  1. Submit a printout of the documentation file, and of the .java file u created, all stapled together (no folders or nylons), to mailbox #308 on the first floor in Schreiber. Submit one hardcopy per pair.
  2. Submit a softcopy in your account.
    1. You should have a ds09a directory in your unix account.
    2. Exercise 1 should reside in the directory ~/ds09a/ex1. Exercise 2 should reside in ~/ds09a/ex2.
    3. This directory should contain 2 files : the .java file for the exercise and the appropriate documentation file (ex1/2.doc)
    4. The permissions of the entire path from your home directory down to the exercise files themselves should be 755, to enable reading by the checkers.

      You may use the following commands, which should be used from a linux terminal window, either in the lab or remotely from home (using Putty, for example):
      chmod 755 .
      chmod -R 755 ./ds09a


    5. You must not touch or change the files you submit after the deadline. All files carry a timestamp indicating the time of last modification. Files that are changed after the deadline will be considered as not submitted on time!
    6. The exercises should be in both students' accounts

More info about the unix accounts can be found here, and here (courtesy of Ohad Barzilay).

Grading
  1. Correctness of the program.
  2. Implementation efficiency. Your programs should have the smallest asymptotic time complexity you can achieve.
  3. Documentation and code clarity. Your documentation and code should be easy to understand. 
Programming Assignments

The posted programming assignments are as follows:

Programming assignment #1, due date 1/1/09 Programming assignment #2, due date 27/1/09
Course Home Page

More details about the course can be found at the course page.

Contact
eranmati@gmail.com