Programs written as part of Coursera's MMDS course by Ullman-Rajaraman-Leskovic