: the class of all languages
: the class of languages that is in NP with probability 1, given a random oracle
: The class of problems for which there is a polynomial algorithm that is correct at least 2/3 of the time.
: The class of problems solveable by a quantum Turing machine in polynomial time, correct at least 2/3 of the time.
: The complement of NP
: The class of problems that may be solved by a Turing machine using O(f(n)) memory.
: Problems that can be computed in n-exponential time, for some n
: Problems that can be computed in exponential time
: Problems that can be represented in first order logic
: Problems that may be solved by a Turing machine memory logarithmic in the size of the problem.
: The class of dashed hopes and idle dreams (Languages that may be computed by a non-deterministic Turing machine in polynomial time)
: Problems that may be solved using a deterministic Turing machine in polynomial time
: Problems that may be solved using a deterministic Turing machine in a finite amount of time
: Regular languages (languages that may be computed using a deterministic finite state machine)
: A theoretical programming in which all programmes are guarenteed to run in polynomial time.
: The class of problems that is expected to be solved in polynomial time by a randomized algorithm
Lectures: This unit consists of about 13 lectures divided into five parts: Introduction to algorithm design; Graph algorithms; String algorithms; Network flow algorithms; and Optimization algorithms. Recordings of lectures may be available through , but attendance at lectures is recommended.
Laboratories There will be 5 assessed laboratories in the first half of semester. The assessment is done by an automated marker and is based solely on java source code you submit electronically. These contribute 10% of your final mark. After the mid-semester break the laboratories will set aside for work on the project.
Mid-semester Test The mid-semester test is worth 20% of your final grade and will be held in week 9, during the usual lecture slot. The questions will be based on those in Tutes 1 to 3. The tutes are from 2011 and will not be assessed, but serve as good preparation for the mid-semester test and final exam
Schedule The table below contains links to all required course material. These may be updated as the semester progresses.
Week | Beginning | Lecture Wed 9-11am: Gentilli | Reading (CLRS) | Laboratory Mon 12pm 2.01 |
---|---|---|---|---|
1 | July 30 | 1. | Chapter 2 | No lab |
2 | August 6 | Chapter 3 | 2.5% due 17/8 | |
3 | August 13 | 2. | Chapter 22 | |
4 | August 20 | Chapter 23 | 2.5% due 31/8 | |
5 | August 27 | Chapter 24 | ||
6 | September 3 | Chapter 25 | 2.5% due 14/9 | |
7 | September 10 | 3. | Chapter 26 | |
8 | September 17 | 4. | Chapter 29 | 2.5% due 5/10 |
Midsemester break | ||||
9 | October 1 | Mid-semester Test (20%) | Chapter 33 | 20% due 1/11 |
10 | October 8 | 5. | Chapter 32 | |
11 | October 15 | Chapter 16 | ||
12 | October 22 | 6. | Chapter 34 | Project Lab |
13 | October 29 | Chapter 35 |
Laboratory Files , , , , , , , , .
Project Files , , , , , ,