Algorithms, Part I