Algorithms I - What is an Algorithm? (8:16 mins, .mov file)

*Why are they important? Examples: recipes, musical scores, assembly instructions, computer programs*.

Algorithms II - The Components of a Complex Algorithm. (13:20 mins, .mov file)

*What are they? How are they used?*

Algorithms III - Devising Algorithms. (14:20 mins, .mov file)

*How do we apply steps to problem solving to assist us to devise algorithms? Example: Fake Coin problem*

Invariants in problem solving. (7:20 mins, .mov file)

*How do we apply invariants to problem solving? Example: Chocolate Cutting problem*

Binary Search (11:25 mins, .mov file)

*How does it work?*

Recursion I - What is Recursion? (15 mins, .m4v file) [YouTube version, local version]

*How does it work? Examples: recursive sub-division, factorial*.

Recursion II - Recursive tree search (15 mins, .m4v file)

*How do we recursively search a tree using depth first search?*

The Halting Problem (10:40 mins, .mov file)

*What is it? Can we solve it?*

What is a tree? What is a graph? (6:25 mins, .mov file)

*How are trees and graphs related?*

How can we use trees and graphs to represent mazes? (7:05 mins, .mov file)

*An application of graphs and mazes to computer games.*

Why sort? (18:34 mins, .mov file)

*An introduction to sorting, searching and binary search trees.*

Merge sort (11:09 mins, .mov file)

*How does Merge sorting work? What is the algorithm?*

Heaps (11:43 mins, .mov file)

*What is a heap? How do we insert nodes into it and remove nodes from it?*

Abstraction (18:20 mins, .mov file)

*What is abstraction? How does it relate to generalisation? Can we use it to help us solve the boat problem?*

Brute Force (11:34 mins, .mov file)

*What is brute force? Can we use it to help us solve the boat problem and the travelling salesman problem?*

Decomposition (14:49 mins, .mov file)

*What is decomposition? Can we use it to help us solve the boat problem?*

Symmetry (7:39 mins, .mov file)

*What is symmetry? How can we use it to help us solve problems?*

Edit distance (23:30 mins, .mov file)

*What is it? How can we calculate it?*

The Turing Machine (16:12 mins, .mov file)

*What is it? How does it work?*

Running Time (13:26 mins, .mov file)

*What is it? What is an algorithm's Time Complexity?*

Big O Notation (10:35 mins, .mov file)

*What is it? How is it used to represent Time Complexity?*