The Design of Approximation Algorithms
Matrix analysis