This is the second edition of a popular book on combinatorics a subject dealing with ways of arranging and distributing objects and which involves ideas from geometry algebra and analysis. The breadth of the theory is matched by that of its application