Notes on behavioral design patterns: memento, state, iterator, strategy, template method, command, observer, mediator, chain of responsibility, and visitor.
Notes on structural design patterns: composite, adapter, decorator, facade, flyweight, bridge, and proxy.
Notes on hash tables: hash functions, collisions, implementation, common operations, etc.
Notes on stacks and queues: definition, common operations, implementation, etc.
Notes on trees: definitions, binary trees, binary search trees, implementation, breadth-first search, depth-first search, pre-order, in-order and post-order traversal, common operations, etc.