Sorting algorithms
Binary trees
Path finding