Book:How to Think Like a Computer Scientist