COMPSCI 532: Design and Analysis of Algorithms