Systematically teaches key paradigmic algorithm design methods

Provides a deep insight into randomization