Zaslat SMS: Algorithms / Robert Sedgewick and Kevin Wayne.