How can Computer Science help us in every day problems? Specifically, what do algorithms teach us? This book offers deep insights and interesting views on real-life scenarios where algorithms developed by mathematicians and computer scientists do solve those problems, or at least approximate optimal solutions.
For example, we encounter “optimal stopping problem” almost on a daily basis. Say you are looking for an apartment, how many should you consider before signing a lease? If you are a hiring manager, how many candidates do you interview before giving an offer? Once you decide, it is often very costly to switch, and you never know if the next one is better. What is the probability that the one you pick happens to be the best possible choice? This type of problems extends to job search, finding a parking space in a huge lot, and even dating/marriage!
This is just a tip of the iceberg. There are many more interesting chapters, covering from sorting, game theory, to computer networks, machine learning, etc. The book does not require computer science background to understand. However, having prior knowledge definitely help you appreciate those algorithms more!