组合数学是数学的一个分支,也是计算机科学的一个重要学科,它主要研究事物在给定模式下的组合构型、研究组合构型的存在性、所有构型的计数和分类以及组合构型的各种性质。组合数学的主要分支包括组合计数、组合设计、组合几何、编码理论、图论及其应用等,在计算机科学中有着极其广泛的应用。本课程主要介绍与组合计数和组合设计相关的一些基本问题、基本原理和基本方法,主要介绍鸽笼原理、排列与组合、二项式系数、容斥原理、生成函数、递推关系、Pólya计数理论、相异代表系、区组设计与编码理论等内容。通过该课程的学习,使学生掌握组合数学的基本内容和推理方法,为学生在以后的学习和科研活动中可能的应用作准备。