CSC 150 - Accelerated Introduction to Computer Science
Fall 2009
|
|
The web page for the first half of the term is here.
General Information
|
Course Instructor
|
Anya Tafliovich
|
|
Email
|
anya@cdf.toronto.edu
|
|
Lectures
|
Monday, Wednesday, Friday 10:00 - 11:00 a.m. in BA 1240
|
|
Tutorials
|
Tuesday 9:00 - 10:00 a.m. in BA 3185
|
|
Office hours
|
Tuesdays 4:00 - 5:00 PM in BA 4290, Wednesdays 11:00 AM - 12:00 PM in
BA 2200
starting on Wednesday November 4
and by appointment
|
Back to the index
Online Resources
-
Course website
Course information, lecture notes, tutorial material, important
announcements, etc. will be posted on the course website. It is
your responsibility to visit it frequently.
-
Email communication
Questions regarding the course material, assignments,
midterms, etc. should be posed on the bulletin
board. Questions about the assignment which you feel you
cannot formulate without revealing your solution (should be
very rare!), should be directed to the TA responsible for that
assignment. Questions and concerns regarding your personal
matters should be directed to the instructor.
-
Bulletin board
You are encouraged to use the bulletin board to discuss the course
material, pose questions on the assignments, etc. The bulletin
board will be monitored by the instructor and by your
TAs. Please, be very careful not to reveal (parts of) your
solution on the bulletin board.
Back to the index
Texts, Software, and Documentation
Back to the index
Tentative syllabus for the rest of the term:
|
1 week
|
Introduction to Python
|
|
2 weeks
|
Abstract Data Types, Introduction to Computational Complexity
|
|
2 weeks
|
Object-Oriented Programming
|
Back to the index
Evaluation
The only change to the original marking scheme is: there will be
one less assignment, and assignment 2 and assignment 3 will be
worth 15% each. The new marking scheme is thus:
| Assignment 1 |
10% |
Assignment 2 |
15% |
| Assignment 3 |
15% |
Midterm 1 |
10% |
| Midterm 2 |
10% |
| Final exam |
40% |
In addition, to pass this course you must achieve a mark of 35% on
the final exam.
Back to the index
Lateness, illness, emergencies
Marks will be deducted for late submissions as follows:
| less than 24 hours | -5% |
| [24, 48) hours | -10% |
| [48, 72) hours | -20% |
| [72, 96) hours | -40% |
| [96, 120) hours | -80% |
| more than 120 hours | -100% |
In addition, according to the UofT policy, no assignments can be
accepted after the last day of classes.
In case of illness or other exceptional circumstances, proper
documentation (e.g. a medical
certificate in case of illness) must be provided. In this
case a missed homework or a missed test may be canceled at the
discretion of the instructor; marks for a missed homework/test
will be distributed evenly over the other marked
homeworks/tests.
If you find yourself in an emergency situation, contact your
instructor as soon as possible.
Back to the index
Policy on collaboration
You are encouraged to discuss ideas and approaches to solving
problems posed on the homework assignments with other
students. However, you are not permitted to take any notes during
these discussions, nor are you permitted to consult other
students' solutions. Searching for a solution on the Internet is a
violation of this policy. Sharing work with other students is a
violation of this policy. If challenged by either a tutor or the
instructor, you must be able to reproduce and explain any solution
you submit in an oral exam. Failure to observe this policy is an
academic offense, carrying a penalty ranging from a zero on a
homework or a quiz to suspension from the university.
You are encouraged to read
this document on Plagiarism and how to avoid
it. If you are uncertain about what constitutes plagiarism, talk
to your instructor. You can also get help from the Undergraduate
Office. There are serious consequences to plagiarism. See this
document for an explanation of the process for dealing with an
offense.
Back to the index
Silent policy
A silent policy takes effect 24 hours before an assignment is due.
This means that no question about the assignment will be answered
whether it is asked on the bulletin board, by email, or in person.
Tentative calendar for the rest of the term
|
Monday, November 16
|
Assignment 2 due
|
|
Friday, November 20
|
Midterm 2
|
|
Friday, December 4
|
Assignment 3 due, last day of classes
|
|
Dec 9-18
|
final exam
|
The University of Toronto policy on
Accommodations for Religious Observances states that no
University member should be seriously disadvantaged because of her
or his religious observances. If you find that a test or an
assignment deadline happens on a religious occasion which you
observe, contact me as soon as possible and I will do my best to
accommodate you.
Back to the index
Announcements
November 12: So, what can I ask you to code up in Scheme on the
final exam? Check out some sample
questions.
December 16: Assignment 3 is graded. Check your CDF mailbox!
Sample (very much incomplete wrt comments) solutions, copyright
our TA Jonathan, are posted.
December 20: The final exam is graded, and all marks are
online. Check out sample solutions of
the final exam.
Back to the index
Lectures
Readings: see lecture notes for assigned readings,
exercises, etc.
Monday, October 26:
discussed solutions to
Friday's mini-quiz, drew a lot of lists on the board
Wednesday, October 28:
playing with lists in Python
Friday, October 30:
introducing linked lists
Monday, November 2:
more linked lists
Wednesday, November 4:
some recursion in our linked
list,
together with a discussion of underscores in methods names
then moving on to doubly
linked lists, introducing optional arguments.
Friday, November 6:
introduced inheritance:
node,
dnode,
linked list,
doubly linked list
Monday, November 9:
fixed doubly linked
list,
talked a lot about testing,
started implementing a list
Wednesday, November 11:
discussed program design, and assignment 2 in particular,
talked about exceptions, used them in list,
and talked about testing
function that raise exceptions.
Monday, November 16:
implemented a binary search
and started talking about big-O
(using CSC148 lecture slides).
Wednesday, November 19: analysed complexity of linear and binary
search
Monday, November 23: implemented two versions of fib() and talked about their
complexity. Started talking about sorting.
Wednesday, November 25: talked about this week's tutorial: reading from a
file, parsing, dictionaries. Implemented an insertion sort.
Friday, November 27: talked about complexity of insertion sort,
implemented merge sort.
Monday, November 30: introduced heaps, implemented
heap sort.
Wednesday, December 2: discussed
OOA/OOD/OOP, and related
concepts.
Friday, December 4: all about the
final exam.
Back to the index
Tutorials
Tuesday, November 3: tutorial 1
Tuesday, November 10: tutorial 2
Tuesday, November 17: tutorial 3
Tuesday, November 24: tutorial 4
with a sample input file.
Tuesday, December 1: Finish up heap sort.
Back to the index
Tests
Friday, November 20: midterm 2 cover page
solutions, marking scheme, and comments
Back to the index
Assignments
Assignment 1 marking
scheme.
Assignment 1 marker's
comments.
Assignment 2 handout,
cover page,
solutions (type "tar xvzf
a2.solutions.tar.gz" without the quotes to unpack).
Assignment 3 handout,
cover page,
a sample network file,
sample (very much incomplete wrt comments)
solutions, copyright our TA Jonathan,
marking scheme.
Remarking request form
Back to the index
Anya Tafliovich