CMPUT 204 Algorithms 1, Section A2
Check often. If you have a question send me
email.
Fall 2010, CEB 255, MWF 12-12:50
Instructor: Michael Buro
Office Hours: Mondays 2-3pm, Wednesdays 1-2pm, and by appointment.
Seminars:
- Sem1 M 5:00PM - 5:50PM CAB 357
- Sem2 T 12:30PM - 1:20PM CAB 229
- Sem3 W 11:00AM - 11:50AM CAB 377
Teaching Assistants:
Zhong Li [zhong4 at ualberta.ca], Parisa Mazrooei
[mazrooei at ualberta.ca], Jiaxing Song [jiaxing2 at ualberta.ca],
Mostafa Vafadost [vafadost at ualberta.ca].
Course material (assignments, lecture
notes) id/passwd required. Note: IT IS NOT YOUR
CCID, NOR YOUR CSID!
Assignment Tips from the TAs
Check your marks
204 Newsgroup
Section News
- Dec.14: A5 can be picked up in my office Wednesday Dec 15 from 1:00-1:45.
- Dec.10: S7 solution hints released. For the final exam study all lectures, seminars, and assignments.
- Dec.8: A5 solution released
- Nov.23: S5,S6 hints released
- Nov.19: To prepare for the second term exam study L17..L29,A3,A4,S4,S5,S6A
- Nov.19: A3, A4 solutions released
- Nov.18: A5 released
- Nov.10: A4 problem 1b) clarified.
- Nov.7: If your current total course
marks are < 50%, the likelihood of failing the course is substantial and
you may want to consider dropping the course (on or before
Nov. 10)
- Nov.3: assignment 4 released
- Oct.25: in this week's seminars midterm exam problems will be discussed.
- Oct.23: term exam 1 graded: average 66%
- Oct.20: don't forget to bring your OneCard to the midterm exam!
- Oct.16: seminar 3 solutions posted. To prepare
for the midterm exam study lecture notes (L1..L16 (including
QuickSort)), A1,A2 (consider problems A3:1,4,5 practice questions),
seminar problem sets S1,S2,S3, and the practice questions discussed
in class
- Oct.16: solutions of assignments 1 and 2 released
- Oct.12: assignment 3 and seminar problem set 3 released
- Oct.8: Make-up seminar Oct 12, 5-5:50pm, CAB 377
- Oct.8: assignment 2 will be returned Friday next week, sem2
solutions released
- Sep.28: assignment 2 and seminar problem set 2 released
- Sep.22: sem1 solutions released
- Sep.22: lecture part2 updated (important for assignment 2)
- Sep.17: lecture part2 updated.
- Sep.15: assignment 1 and seminar problem set 1 released here
- Sep.9: NEW ROOM: CEB 255 starting Friday, Sep.10 !
- Sep.8: added assignment tips
- Sep.6: Welcome to the course! I have uploaded the first
part of the lecture notes into the material directory. Please note
that lecture notes are not finalized yet, and may therefore change.
Also note, that I gather lecture material from multiple sources. So,
just reading one text book can't replace attending lectures.
Schedule
Lectures Sem1 Sem2 Sem3
Wk. Monday M W F M T W
1. Sep.06 % L1 L2 % % %
2. Sep.13 L3 L4/A1r L5 S1 S1 S1
3. Sep.20 L6 L7 L8 S1 S1 S1
4. Sep.27 L9 L10/A2r/A1d L11 S2 S2 S2
5. Oct.04 L12 L13 L14 S2 S2 S2
6. Oct.11 % (TG) L15/A3r/A2d L16 [%] S3 S3
7. Oct.18 L17 L18 Midterm 1 S3 S3 S3
8. Oct.25 L19 L20 L21 Mid1 Solutions
9. Nov.01 L22 L23/A4r/A3d L24 S5 S5 S5
10. Nov.08 L25 L26 % (RD) S5 S5 S5
11. Nov.15 L27 L28/A5r/A4d L29 S6 S6 S6
12. Nov.22 L30 L31 Midterm 2 S6 S6 S6
13. Nov.29 L32 L33 L34 S7 S7 S7
14. Dec.06 L35/A5d L36 % S7 S7 S7
Legend: Ajr / Ajd : assignment j released / due
% : no class / seminar
Li : lecture i
Si : seminar problem collection i
[%] : make-up seminar, date: Oct 12, 5-5:50pm, CAB 377
(TG) : Thanks Giving
(RD) : Remembrance Day
Midterm 1 : Friday, Oct. 22 in class (closed book)
Midterm 2 : Friday, Nov. 26 in class (closed book)
Final exam: 15-Dec-2010
(Wednesday) @ 2:00 pm, CSC B2
Course Objectives
Upon successful completion of the course, students will have
knowledge, and improved skills of how to present algorithmic ideas,
argue their correctness and efficiency to a scientific
audience. Mastering the course contents will give students a sound
foundation of how to select suitable data structures and to design new
algorithms for solving combinatorial problems.
Topics
Topics will be covered from the following list, as time permits:
- Introduction: fundamentals of algorithmic problem solving
- Math review: summation, proofs, program correctness
- Asymptotic notation
- Runtime analysis of non-recursive and recursive algorithms
- Brute force algorithms
- Divide-and-Conquer algorithms
- Dynamic programming algorithms
- Greedy algorithms
- Graph Algorithms
- Limits of Computation
Literature and Lecture Notes
- A. Levitin, Introduction to the Design and Analysis of
Algorithms, 2/E, Addison Wesley, 2006 (required)
- T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein, Introduction to
Algorithms, 2/E, McGraw Hill, 2009 (recommended)
(Available on-line (HTML format), from the U. of A. library, the 24x7
E-book collection (the site requires you to register first).
-
A Short Course in Discrete Mathematics: recommended free textbook
covering the math pre-requisites for this course. If you haven't taken
CMPUT 272 yet or feel math-rusty, I suggest reading this book before
the term starts.
I will make lecture notes available during the
term. I suggest reading ahead in the course material
so that you will come prepared to the lectures - ready to ask
questions if things are unclear.
Course Work and Evaluation
Attend first 2 Seminars, 1% each
5 Assignments, 7% each
2 Term exams (50min, closed book), 15% each
Final Exam (2hr, closed book), 33%
Assignments
Assignment solutions have to be handed in by 12:50 on the due days in
class or slid under my office door (Ath 337).
It is important to write your student id and your
lecture section (A1 or A2) on the front page, which must otherwise be
empty. Write your name on the second page of your submissions.
For assignments that are handed in late by less than 24 hours, 20% of
the maximum marks will be deducted. Going beyond one day will result
in 0 marks. Assignment marking related questions will be addressed by
TAs. You need to contact them within 2 days after the marked
assignments have been returned.
Seminars
- start in week 2
- problems are solved in small groups with TA support
- marked assignments are handed back
- assignment solutions are presented
- question and answer sessions
Midterm and Final Exams
The weight of missed midterm exams will be shifted to the final exam
in case an excused absence is granted. You need to send me email
within 2 days of the missed exam. Questions or concerns about marking
exams must be brought to my attention within 2 days of the return
date.
Deferred Final Exam
For a missed final exam the student must apply to the Faculty of
Science (not the instructor) for permission to write the deferred exam
on Wednesday, Jan. 12, 10:00 to 12:00 (ATH 332).
Final grades
I will use reasonable grade cutoffs in this course.
For a discussion of the meaning of letter grades
go here.
Note, that the chance of failing is high once your course work average
drops below 40%.
Collaboration
Students are encouraged to discuss and solve problem sets in small
groups to speed up learning and stimulate idea exchange. In the end,
however, every student must write down their own solutions and be able
to solve similar problems independently. You must give credit to any
source that substantially assisted you in completing the assignment. A
source includes fellow students, books, papers, the TAs, and
me. Failure to give proper credit is considered plagiarism.
Student Responsibilities
- Review lectures, identify unclear points, and ask questions right away!
- Attend seminars and do assignments - right from the
start. Without solving problems on your own, it
will be hard to pass this course.
- Review solutions to the assignments.
- Expect to spend 4h/week on this course in addition to the
lectures and seminars.
- Forward constructive feedback to the instructor and/or TAs
(simply complaining about difficulties, low marks, little study time,
etc. does not help at all).
- Make yourself familiar with the
Code
of Student Behavior
last modified on
; you are visitor #
since Aug/17/2010