collection of classical algorithm problems