A First Course in Combinatorial Optimization, Cambridge Texts in Applied Mathematics, 36