CSC263H
--
Data
Structures
and
Analysis
Winter 2010
Index of this document
Contact information and meeting times
Instructor:
Sam Toueg.
- Office hours: Friday 1 - 3 pm
- Office: SF 2304C (St. George campus)
- Telephone: 416-946-3510
- Email:
sam@cs.toronto.edu
TA's: Siavosh Benabbas,
Hossein Bokharaei, Laurent
Charlin,
Gabriel Chow,
George Dahl, Akitoshi
Kawamura,
Vladimir Yanovsky.
Lecture
times and locations:
- Morning course: Monday and Wednesday 3 - 4 pm,
Bahen 1210.
- Evening course: Thursday 6 - 8 pm, Bahen 1200.
Tutorial
times and locations: There will be a tutorial the first week of class.
- Morning course: Friday 3 - 4 pm, as follows:
- Students whose family name starts with a letter from A to L in Bahen 1210 (Teaching
Assistant: Siavosh Benabbas).
- Students whose family name starts with a letter from M to Z in Bahen 2135 (Teaching
Assistant: Gabriel Chow).
- Evening course: Thursday 8 - 9 pm, in Bahen 1200
(Teaching
Assistant: Siavosh Benabbas).
Back to the index
Course content
Course goals:
Data structures are ways of organising the data involved
in computation, suitable for representation in and manipulation by
computers. Algorithms are precisely stated, general
problem solving methods. Data structures and algorithms are
central to computer science. They are also integrally related:
neither can be studied fruitfully without knowledge of the other. This
course has two goals: First, to survey several
important data structures and algorithms; and second, to
introduce the basic tools and techniques for the analysis of algorithms
and data structures.
Prerequisite:
CSC207H1/270H1,
CSC236H1/238H1/CSC240H1;
STA247H1/STA255H1/STA257H1;
CGPA
1.5/enrolment
in
a
CSC
subject
POSt.
Important Note:
The
prerequisite requirement is strictly enforced in this course. If
you do not satisfy it, you must contact the instructor and
submit a petition for a waiver within the first week of class.
Your
petition
should
include
the
following
information:
your
full
name
and
student
number,
the
specific
prerequisite
that
you
are requesting a
waiver for, the reason for the request, and supporting documentation
showing that you know the material covered by the prerequisite that you
would like to be waived. This should include a recent printout of your
academic transcript.
Required
Textbook:
Introduction to Algorithms, 3rd edition, by Cormen,
Leiserson, Rivest, and Stein; MIT press and McGraw-Hill, 2009.
Calendar of
important course-related
events:
Speak, then, and tell
everything. For, it comforts those in pain
To know before hand all the agony they still must bear.
--Aeschylus, Prometheus Bound
| Date |
Event |
Week of January 4
|
First week of class |
Thursday, January 14
|
Assignment 1 handed out |
Thursday, January 28
|
Assignment 1 due and Assignment 2 handed out |
Thursday, February 11
|
Assignment 2 due
|
Thursday, February 25
|
Midterm
exam (8 pm to 9 pm in the evening)
Assignment 3 handed out
|
Thursday, March 11
|
Assignment 3 due and Assignment 4 handed out |
Thursday, April 1
|
Assignment 4 due |
Midterm
Exam:
Bring your
Student Id card
Material covered: All the
material
that we covered in class, in the tutorials, in the reading assignments,
and in the homeworks, up to and including the last week of class before
the exam.
Aids Allowed: None.
Please try to come at least 5-10 minutes
before 8pm,
so that we can
pre-distribute the exam and then start it
at 8pm sharp.
Back to the index
Course policies
Course
evaluation:
There will be four homeworks, a midterm exam and a final exam.
The relative weights of these components towards the final mark are
shown in the table below:
| Homework |
40% (10% each) |
| Midterm |
15% |
| Final |
45% |
Important note: A mark of
at least 40% on the final exam is necessary to pass
the course. Repeated differently: If you receive less than
40% on the final exam you automatically fail the course, regardless of
how well you have done on homeworks or the midterm exam.
Homework
collaboration
policy:
In each homework you may collaborate with at most one other
student who is currently taking one of the two sections of CSC263H
taught by Sam Toueg. If you collaborate with another student on a
homework, you and your partner must submit only one copy of
your solution (in this case, write both
of
your
names on the cover sheet of the pencil-and-paper part of
the assignment, and also on the header of the program file that you
submit). The solution will be graded in the usual way and
both partners will receive the same mark. Collaboration involving more
than two students is not allowed.
For help with your homework you may consult only the instructor, TAs,
your homework partner (if you have one), your textbook and your class
notes. You may not consult any other
source.
Homework
submission: Every homework can consist of:
(1) a number of "pencil-and-paper" questions
(whose solution involves no programming and can be handwritten or
typed), (2) some "programming" questions
(whose solution will involve some amount of programming), or (3) a
combination of both. All the
parts of each homework are due
by 5:30pm sharp on the homework due
date (usually a Thursday).
- The "pencil-and-paper" part must be given to us with the
cover sheet in the appropriate course drop box in
Bahen 2220 (by 5:30pm on the due
date).
- The programming part must be submitted using the "submit" mechanism on CDF (by 5:30pm on the due date). The CDF FAQ
contains general instructions for submitting your work electronically
(under the "Submitting Work" section).
More detailed instructions will be provided on this webpage,
and/or for individual assignments. Remember
to
include
in
the
header
of
the
program
file
that
you
submit
both
your
name
and
the
name
of your partner (if you have one).
Homework
return: Each graded homework (the
"pencil-and-paper" part) will be returned to you
at the tutorial classrom that you write
on the cover page of your
homework. Graded homework
that is not picked up at the
tutorials can be picked up from Elizabeth Ribeiro at SF2301D.
Late
homework policy:
No late homeworks will be accepted. The only exception to this
rule is described in our Policy on Special Consideration
. If you miss a homework deadline for a reason that we consider valid,
we will use the
average mark that you achieved in other homeworks as your mark for the
missed homework.
Remarking
policy:
If your request concerns a simple addition error, see the
instructor. To make any other kind of remarking request, you must
fill this form , attach it to
your homework assignment or test, and give it to the instructor of the
course no later than one week from the date the marked
assignment or test was made available to the class. Remarking
requests made after this deadline will not be accepted.
A remarking
request can cause the overall mark to stay the same, increase or
decrease:
we may re-examine every question of the homework and if new mistakes
are found they can also change the marking up or down accordingly.
Please submit a remarking request only if: (a) you have read and
completely understood our posted solution set, and (b) you still think
that your solution is correct and was mistakenly marked as incorrect. We rarely if
ever accept remarking requests of the type ``yes, my solution is
not correct, but I think you took off too many marks for this
mistake'': The marking scheme
was decided and applied as uniformly as possible to all students.
Missed
midterm test policy:
If you miss the midtermhttps://www.cdf.toronto.edu/students/
test due to a medical or other
serious emergency, get in touch with your instructor immediately and
follow our Policy on Special
Consideration . There will be no make-up test, but if we
consider your reason for missing the test to be valid, we will use your
final examination mark to compute your mark for the missed midterm test.
Attendance in
tutorials:
Attendance in tutorials is as mandatory as attendance in
lectures. In neither case is formal attendance actually taken. However,
there will be new material that is presented only in tutorials and not
discussed in the lectures for which you are responsible and in which
you may be tested in homeworks or exams.
Back to the index
Announcements
In this space we will post announcements related to the course.
Please check this space frequently (at least 3 or 4 times a week).
- Week of February 9: Reading
assignment:
CLRS Chapter 21. Marks for Homework 1 are now posted on cdf.
- Friday,
February 5: Marked Homework 1 copies can be picked-up from
Elizabeth Ribeiro at SF 2310D (from about
8:30am to about 4:30pm).
- Week of February 1: Reading assignment:
CLRS Chapter 5, on probabilistic analysis and randomized algorithms,
and Chapter 7 on Quicksort.
- Week of January 25: Reading assignment: CLRS
Chapter 14, and 11.1 to 11.3 (except 11.3.3).
- Thursday,
January 14: The time for the
Python ``ramp-up'' workshop has changed! The workshop will
actually start at 12:30 pm and go to 5pm without
breaks (this Saturday in Bahen 3195, see announcement below, remember
to register). Because there is a limited number of computers available,
try to bring your own laptop with a working Python environment.
- Tuesday,
January 12: Students who need some help learning Python can
attend a free one-day workshop this Saturday, January 16, from 11am to
4pm. If you plan to do so, you must register for the workshop: there is
limited space and priority is for CSC148 students. For more details and
registration information please see ``Ramp-up sessions'' here.
Another
source
of
Python
help
is
the
tutorial
at python.org,
and the student Help Centre at Bahen.
- Week of January 11: Reading assignment: CLRS
Chapters
6 (Heaps) and Binomial Heaps
(taken from the 2nd Edition of CLRS).
- Wednesday,
January 6: We posted the Programming
question
of
Homework
#1 earlier than anticipated, so
you can start working on it earlier if you want. The rest of Homework 1
(namely, the pencil-and-paper questions) will be posted by Thursday
January 14, as originally planned.
If you have any questions about the programming question of a
homework, please e-mail them directly to the teaching assistant who is
in charge
of the programming questions in this course, at csc263ta1_w2010@cs.toronto.edu
- Week of January 4: Reading assignment:
CLRS Chapters 1, 2, and 3. You should also read the one-page
handout on asymptotic worst-case time
complexity. There is a tutorial this week.
Back
to the index
Handouts and Homeworks
In this space we will
make available course material, homeworks and solutions.
To view some of these
handouts you will need access to a postscript
previewer. If your machine does not have the required software, you can
allegedly download it for free by following this link.
If you
have any questions about the programming question of a
homework, please e-mail them directly to the teaching assistant who is
in charge
of the programming questions in this course, at:
csc263ta1_w2010@cs.toronto.edu
Back to the index