java source code for the course Algorithms, Part 1