Chapters 2 and 3 of algorithms.