《程序设计中的组合数学》吴文虎 | PDF下载|ePub下载
类别: 计算机
内容简介 · · · · · ·
本书系统地介绍了与程序设计竞赛有关的组合数学的基本理论和算法设计与分析的常用方法。全书共分8章,分别为:算法基础、组合数学初探、排列与组合、容斥原理、母函数、拟阵、贪心算法和Pólya定理。本书突出组合数学算法的设计与优化,从而更便于参加程序设计竞赛的读者学习组合数学。
本书可作为ACM/ICPC国际大学生程序设计竞赛和国际信息学奥林匹在竞赛(IOI)的培训教材,也可供从事组合数学与算法研究的人员参考。
目录 · · · · · ·
目录 1
第1章 算法基础 1
1.1 算法 1
1.2 时间复杂度与空间复杂度 2
1.3 P类与NP类 9
习题1 14
第2章 组合数学初探 16
2.1 组合数学的起源 16
2.2 组合数学研究的问题 17
习题2 23
第3章 排列与组合 25
3.1 基本概念 25
3.2 分拆与置换的表示 28
3.3 排列与组合的生成算法 31
3.4 购票问题 34
3.5 “方程的解”问题 46
习题3 51
第4章 容斥原理 55
4.1 基本概念 55
4.2 “被毁坏的玉米地”问题 59
习题4 64
第5章 母函数 69
5.1 普通型母函数 70
5.2 指数型母函数 74
5.3 质数分解问题 77
5.4 “红色病毒”问题 79
5.5 “自共轭Ferrers图”问题 82
5.6 常见组合计数方法之比较 89
5.7 NPC问题的代数化 91
习题5 98
第6章 拟阵 101
6.1 基本概念 101
6.2 拟阵的基本性质 104
6.3 拟阵与贪心算法 107
习题6 114
第7章 贪心算法 116
7.1 贪心算法的概念与特点 116
7.2 最佳浏览路线问题 119
7.3 贪心算法与近似计算 122
习题7 126
第8章 Pólya定理 130
8.1 群与置换群 130
8.2 Burnside引理 135
8.3 Pólya定理 139
习题8 141
附录A 阅读本书的预备知识 145
A1 集合论 145
A2 图论 148
A3 初等数论 151
A4 级数 154
索引 157
参考文献 160
· · · · · ·
第1章 算法基础 1
1.1 算法 1
1.2 时间复杂度与空间复杂度 2
1.3 P类与NP类 9
习题1 14
第2章 组合数学初探 16
2.1 组合数学的起源 16
2.2 组合数学研究的问题 17
习题2 23
第3章 排列与组合 25
3.1 基本概念 25
3.2 分拆与置换的表示 28
3.3 排列与组合的生成算法 31
3.4 购票问题 34
3.5 “方程的解”问题 46
习题3 51
第4章 容斥原理 55
4.1 基本概念 55
4.2 “被毁坏的玉米地”问题 59
习题4 64
第5章 母函数 69
5.1 普通型母函数 70
5.2 指数型母函数 74
5.3 质数分解问题 77
5.4 “红色病毒”问题 79
5.5 “自共轭Ferrers图”问题 82
5.6 常见组合计数方法之比较 89
5.7 NPC问题的代数化 91
习题5 98
第6章 拟阵 101
6.1 基本概念 101
6.2 拟阵的基本性质 104
6.3 拟阵与贪心算法 107
习题6 114
第7章 贪心算法 116
7.1 贪心算法的概念与特点 116
7.2 最佳浏览路线问题 119
7.3 贪心算法与近似计算 122
习题7 126
第8章 Pólya定理 130
8.1 群与置换群 130
8.2 Burnside引理 135
8.3 Pólya定理 139
习题8 141
附录A 阅读本书的预备知识 145
A1 集合论 145
A2 图论 148
A3 初等数论 151
A4 级数 154
索引 157
参考文献 160
· · · · · ·
发表回复
要发表评论,您必须先登录。