Cormen et.al, Introduction To Algorithms (2009)