Randomized algorithms - Motwani, Rajeev (Cambridge University, 1995)