How to think about algorithms - Edmonds, Jeff (2008)