This year we are going to use the University of Canterbury's Computer Science Field Guide to guide our investigation into Complexity and tractability.
By the end of it you should have a good understanding of the concepts:
Complexity in Computer Science
Polynomial vs non-polynomial time complexity
Big O notation (including examples)
Best case, average case, worst case complexity
Different methods of solving problems (approximation & heuristic)
(A bit about) algorithm design and optimisation
Optimal solutions
Some of the famous problems eg: Traveling Salesman, Knapsack problem