1. Inheritance and Generic classes in Java
2. Big-O analysis of algorithms with static search as example
3. Stacks, Queues and Lists. Implementations with arrays and linked nodes.
4. Recursion and Divide and Conquer
5. Sets and Maps, Hash tables
7. Binary trees and binary search trees
Currently, we are not planning on diverging much from the lineup of the course that Veronica gave in 2009. Again, this is not set in stone. It is subject to change. Preliminary course material can be found for the 2009 course here. One major difference is that the current course does not have the introductory lecture on Java basics, for this is a prerequisite of the 2010 course. All lectures will therefore probably have erroneous indexing (lecture 1 is titled lecture 2, lab 1 is titled lab 2 and so forth).
OBSERVE that examination is different in the current course compared to the 2009 one.
Planned changes: dynamic programming will be less covered, and Sequence alignment will probably be left out all together.