Algorithms for C++