Weeks 12 & 13: Algorithms