Algoritms, data structures and problem solutions.