新書推薦:
《
视觉美食家:商业摄影实战与创意解析
》
售價:HK$
132.2
《
中国经济发展的新阶段:机会与选择
》
售價:HK$
99.7
《
DK月季玫瑰百科
》
售價:HK$
210.6
《
为你想要的生活
》
售價:HK$
66.1
《
关键改变:如何实现自我蜕变
》
售價:HK$
77.3
《
超加工人群:为什么有些食物让人一吃就停不下来
》
售價:HK$
99.7
《
历史的教训(浓缩《文明的故事》精华,总结历史教训的独特见解)
》
售價:HK$
62.7
《
不在场证明谜案(超绝CP陷入冤案!日本文坛超新星推理作家——辻堂梦代表作首次引进!)
》
售價:HK$
58.2
|
內容簡介: |
本书充分考虑到初学者的需要,内容、例题、习题都经过精心的挑选和组织,讲解细致,循序渐进,实例贴近日常生活或计算机应用。本书注重算法,且算法描述独立于某种具体的编程语言。教师可根据学生的层次和兴趣来灵活拓展和组织讲解内容。
本书可作为计算机专业或其他相关专业的离散数学教材或教学参考书,也可作为自学者的参考用书
|
目錄:
|
第1章 组合问题与组合技术引论1
1.1 工程完成时间的问题2
1.2 匹配问题10
1.3 背包问题16
1.4 算法及其效率23
历史注记35
补充习题37
计算机题39
推荐读物40
第2章 集合、关系和函数41
2.1 集合运算41
2.2 等价关系47
*2.3 偏序关系54
2.4 函数65
2.5 数学归纳法76
2.6 应用84
历史注记93
补充习题95
计算机题98
推荐读物98
第3章 编码理论99
3.1 同余100
3.2 欧几里得算法106
3.3 RSA方法113
3.4 检错码和纠错码122
3.5 矩阵码132
3.6 单纠错矩阵码140
历史注记147
补充习题149
计算机题152
推荐读物153
第4章 图154
4.1 图及其表示154
4.2 通路和回路164
4.3 最短通路和距离181
4.4 图着色193
4.5 有向图和有向多重图202
历史注记219
补充习题220
计算机题226
推荐读物227
第5章 树228
5.1 树的性质228
5.2 生成树238
5.3 深度优先搜索253
5.4 根树266
5.5 二叉树和遍历274
5.6 最优二叉树和二叉搜索树287
历史注记306
补充习题308
计算机题311
推荐读物312
第6章 匹配313
6.1 相异代表系313
6.2 图中的匹配319
6.3 匹配算法327
6.4 算法的应用337
6.5 匈牙利方法346
历史注记354
补充习题355
计算机题357
推荐读物357
第7章 网络流358
7.1 流和割358
7.2 流增广算法369
7.3 最大流最小割定理382
7.4 流和匹配389
历史注记397
补充习题397
计算机题400
推荐读物401
第8章 计数技术402
8.1 帕斯卡三角形和二项式定理402
8.2 3个基本原理406
8.3 排列和组合416
8.4 允许重复的排列和组合421
8.5 概率428
*8.6 容斥原理434
*8.7 排列和r组合的生成445
历史注记452
补充习题453
计算机题456
推荐读物457
第9章 递推关系与生成函数458
9.1 递推关系458
9.2 迭代法470
9.3 常系数线性差分方程482
*9.4 用递推关系分析算法的效率494
9.5 用生成函数计数506
9.6 生成函数的代数513
历史注记523
补充习题524
计算机题527
推荐读物528
第10章 组合电路和有限状态机529
10.1 逻辑门529
10.2 构造组合电路538
10.3 卡诺图546
10.4 有限状态机560
历史注记569
补充习题570
计算机题573
推荐读物573
附录A 逻辑和证明简介574
A.1 命题和联结词574
A.2 逻辑等价583
A.3 证明的方法587
历史注记593
补充习题594
推荐读物596
附录B 矩阵597
历史注记604
附录C 本书中的算法607
参考文献613
奇数号习题答案618
图片来源658
Contents
1AN INTRODUCTION TO COMBINATORIAL PROBLEMS AND TECHNIQUES1
1.1 The Time to Completea Project 2
1.2 A Matching Problem 10
1.3 A Knapsack Problem 16
1.4 Algorithms and Their Efficiency 23
Historical Notes 35
Supplementary Exercises 37
Computer Projects 39
Suggested Readings 40
2 SETS, RELATIONS, AND FUNCTIONS 41
2.1 Set Operations 41
2.2 Equivalence Relations 47
2.3* Partial Ordering Relations 54
2.4 Functions 65
2.5 Mathematical Induction 76
2.6 Applications 84
Historical Notes 93
Supplementary Exercises 95
Computer Projects 98
Suggested Readings 98
3 CODING THEORY 99
3.1 Congruence 100
3.2 The Euclidean Algorithm 106
3.3 The RSA Method 113
3.4 Error-Detecting and Error-Correcting Codes 122
3.5 Matrix Codes 132
3.6 Matrix Codes that Correct All Single-Digit Errors 140
Historical Notes 147
Supplementary Exercises 149
Computer Projects 152
Suggested Readings 153
4 GRAPHS 154
4.1 Graphs and Their Representations 154
4.2 Pathsand Circuits 164
4.3 Shortest Paths and Distance 181
4.4 Coloringa Graph 193
4.5 Directed Graphs and Multigraphs 202
Historical Notes 219
Supplementary Exercises 220
Computer Projects 226
Suggested Readings 227
5 TREES 228
5.1 Properties of Trees 228
5.2 Spanning Trees 238
5.3 Depth-First Search 253
5.4 Rooted Trees 266
5.5 Binary Trees and Traversals 274
5.6 Optimal Binary Trees and Binary Search Trees 287
Historical Notes 306
Supplementary Exercises 308
Computer Projects 311
Suggested Readings 312
6 MATCHING 313
6.1 Sys
|
內容試閱:
|
如今,数学的应用越来越多地涉及离散而非连续的模型,其主要原因是现代社会越来越多地用到计算机。本书适用于一学期的离散数学入门课程。
预备知识
虽然按照本书讲授的课程只要求很少的数学预备知识,但还是要求学生至少达到修读过两年高中数学所应具有的水平,包括解题和运算的技能以及抽象思维的能力。
方法
本书强调算法并以此贯穿全书。算法用文字表述,不需要具体编程语言的知识。
主题的选择
本书主题的选择基于多个专业组织的建议,包括MAA(美国数学协会)一年级和二年级离散数学课程制定工作组的建议、NCTM(National Council of Teachers of Mathematics,美国数学教师理事会)的学校数学教育的原则与标准和CBMS(Conference Board of the Mathematical Sciences,美国数学科学联合会)对数学教学的建议等。
灵活性
虽然本书是针对一学期的课程设计的,但是本书所包含的材料多于一个学期所能覆盖的内容。因此,教师可以根据学生的特定需求和兴趣方便地选择主题。本书以前的版本在从计算机科学专业的一年级课程到数学专业的高年级课程等许多课程中用过,并得到了良好的反映。现在的这个版本仍然为教师提供了灵活性,以适用于各种不同专业学生的课程。
第5版的变动
第5版的主要变动是新增了一章第3章,讨论同余、欧几里得算法及相关的数论、RSA公钥密码技术、检错码和纠错码(包括矩阵码)。本书其余内容与这一章不相关,所以可由教师根据需要进行取舍。学习矩阵码的内容要求熟悉矩阵,所以在学习编码理论这一章之前,不熟悉矩阵的学生需要先阅读附录B。(详见下面的章节独立性和课程设置建议。)
另外,新版本在表述的清晰性方面有所改进,对离散数学的新进展也给予了关注。
习题
本书的习题安排错落有致,灵活性强。每节后都有大量简单的计算题和算法题,其中大多数习题有助于学生针对离散数学的概念和算法进行全面练习,这对数学基础较弱的学生尤其重要;另一些习题拓展了正文中的材料,或者引入了正文中未论述过的新概念。带*号的习题是更具挑战性的问题。教师应根据课程和学生水平从中挑选。奇数号习题的答案附在本书末尾。在每一章的末尾,有一组补充习题,用来温习各章最重要的概念和技术,以及探讨正文中未讨论的新概念。
章节独立性
在采用本书进行教学时,各章的顺序可以灵活地安排。下图显示了各章的依赖关系。其中,虚线表示第6章仅与第4章的前几节内容相关。本书只假定读者具有高中几何课程逻辑与证明的知识,而对那些偏好更形式化处理的读者提供了一个附录(附录A),可以将它作为独立的单元在任何时候讲授,也可以与第9章一起讲授。仅在3.5~3.6节和第4章讨论邻接矩阵时,要求熟悉矩阵(附录B)。
第1章和第2章实质上是导论。第1章给出本书所处理的离散问题的样例,应很快讲授完。该章只是提出某些问题,而在本书的后面才给出解答。1.4节包含对复杂性的讨论,可以略过它,或者推迟到学生有更多算法经验时再讲授。在这一节中,教师可以只讲解与学生关系最密切的示例算法。
第2章复习各种基本主题,包括集合、关系、函数和数学归纳法。该章可以讲授得稍快些,这取决于学生的数学背景和课程的层次。对于数学背景较好的学生,第2章的很多内容应该可以让他们自学。如上图所示,除了第5章和第7章依赖于第4章,以及第6章与第4章前几节的内容相关外,其余各章均彼此独立。
为配合新的第3章,同余的内容从第2章中移出。与第4版一样,这个内容(见第5版的3.1节)可以在讲完2.2节(等价关系)以后的任何时候学习。
课程设置建议
下面的表格给出了三个课程设置范例。课程A的重点是图论及其应用,涵盖了第4~7章的大部分内容。课程B涉及图论较少,更强调计数技术。课程C的重点是计算机科学专业的学生所感兴趣的论题。
课程A课程B课程C
章课时数章课时数章课时数
141(跳过1.4节)314
252525
4646附录B1
575636
668846
749556
88附录A395
94附录A3
104
本书适用于各种层次的离散数学课程。比如,计算复杂性是一个很重要的主题,本书对许多算法的复杂性给予了关注。但是,这是一个较难的主题,其论述深度应当与课程的层次和学生的基础相吻合。
计算机题
各章结尾均给出一组计算机题,这些计算机题与该章的内容、算法等相关。本书刻意用普通的术语来叙述计算机题,以便适应使用各种计算系统和语言的学生。
致谢
我们衷心地感谢下列审阅本书的数学家:米勒斯维尔大学的Dorothee Blum、威斯康星大学麦迪逊分校的Richard Brualdi、佛罗里达州立大学的John L. Bryant、波特兰州立大学的 Richard Crittenden、乔治梅森大学的Klaus Fischer、东得克萨斯州立大学的Dennis Grantham、Clemson大学的William R. Hare、东密歇根大学的Christopher Hee、佛罗里达大西洋大学的Frederick Hoffman、佛罗里达国际大学的Julian L. Hook、Broome社区学院的Carmelita Keyes、 Macalester学院的Richard K. Molnar、普度大学Calumet分
|
|