Complexity theory; simple sorting and searching algorithms; ADTs: lists, stacks, queues, trees; advanced sorting algorithms; recursion, and hashing.