stanford-algorithms Programming assignments / Stanford's Divide and Conquer, Sorting and Searching, and Randomized Algorithms