Combinatorics : an upper-level introductory course in enumeration, graph theory, and design theory

"Combinatorics provides an introduction to enumeration, graph theory, and design theory. It is aimed at upper-level undergraduate students and the exercises expect some mathematical sophistication, including a reasonable ability to construct proofs. The text is designed to be used in an undergraduate course, but could be suitable for independent study by a student with some mathematical background and understanding of proofs. It does not assume any background knowledge of combinatorics"--BC Campus website.