本书系统地介绍了图论算法理论,并选取经典的ACM/ICPC竞赛题目为例题阐述图论算法思想,侧重于图论算法的程序实现及应用。本书第1章介绍图论基本概念和图的两种存储表示方法:邻接矩阵和邻接表,第2~9章分别讨论图的遍历与活动网络,树与生成树问题,最短路径问题,可行遍性问题,网络流问题,点支配集、点覆盖集、点独立集、边覆盖集、边独立集(匹配),图的连通性问题,平面图与图的着色问题等。本书可以作为高等院校计算机(或相关专业)图论等相关课程的主教材,也可作为ACM/ICPC竞赛的辅导教材。
书 名:图论算法理论、实现及应用
标准书号:
定 价:54.00元
第1章 图的基本概念及图的存储... 1
1.1 基本概念... 1
1.1.1 有向图与无向图... 1
1.1.2 完全图、稀疏图、稠密图... 2
1.1.3 顶点与顶点、顶点与边的
关系... 3
1.1.4 顶点的度数及度序列... 3
1.1.5 二部图与完全二部图... 5
1.1.6 图的同构... 6
1.1.7 子图与生成树... 6
1.1.8 路径... 8
1.1.9 连通性... 8
1.1.10 权值、有向网与无向网... 10
1.2 图的存储表示... 10
1.2.1 邻接矩阵... 10
1.2.2 邻接表... 17
1.2.3 关于邻接矩阵和邻接表的
进一步讨论... 25
练习... 25
第2章 图的遍历与活动网络问题... 26
2.1 DFS遍历... 26
2.1.1 DFS算法思想... 26
2.1.2 DFS算法的实现及复杂度
分析... 27
2.1.3 例题解析... 30
练习... 40
2.2 BFS遍历... 43
2.2.1 BFS算法思想... 43
2.2.2 BFS算法的实现及复杂度
分析... 44
2.2.3 关于DFS算法和BFS算法
的说明... 46
2.2.4 例题解析... 46
练习... 60
2.3 活动网络——AOV网络... 66
2.3.1 AOV网络与拓扑排序... 66
2.3.2 拓扑排序实现方法... 68
2.3.3 关于拓扑排序的进一步说明... 73
2.3.4 例题解析... 74
练习... 82
2.4 活动网络——AOE网络... 84
2.4.1 AOE网络与关键路径... 84
2.4.2 关键路径求解方法... 85
第3章 树与图的生成树... 92
3.1 树与森林... 92
3.1.1 树... 92
3.1.2 森林... 92
3.2 生成树及最小生成树... 93
3.2.1 生成树... 93
3.2.2 最小生成树... 93
3.3 克鲁斯卡尔(Kruskal)算法... 94
3.3.1 克鲁斯卡尔(Kruskal)算法
思想... 94
3.3.2 等价类与并查集... 95
3.3.3 Kruskal算法实现... 99
3.3.4 Boruvka算法... 103
3.3.5 例题解析... 104
练习... 110
3.4 普里姆算法... 114
3.4.1 Prim算法思想... 114
3.4.2 普里姆(Prim)算法实现... 115
3.4.3 关于普里姆算法的进一步
讨论... 119
3.4.4 例题解析... 120
练习... 125
3.5 判定最小生成树是否唯一... 129
3.5.1 最小生成树不唯一的原因
分析... 129
3.5.2 判定最小生成树是否唯一的
方法... 130
3.5.3 例题解析... 132
第4章 最短路径问题... 137
4.1 边上权值非负情形的单源最短
路径问题—Dijkstra算法... 137
4.1.1 算法思想... 137
4.1.2 算法实现... 139
4.1.3 关于Dijkstra算法的
进一步讨论... 143
4.1.4 例题解析... 143
练习... 150
4.2 边上权值为任意值的单源最短
路径问题—Bellman-Ford算法... 154
4.2.1 算法思想... 154
4.2.2 算法实现... 156
4.2.3 关于Bellman-Ford算法的
进一步讨论... 160
4.2.4 例题解析... 163
练习... 171
4.3 Bellman-Ford算法的改进—
SPFA算法... 174
4.3.1 算法思想... 174
4.3.2 算法实现... 175
4.3.3 关于SPFA算法的进一步
讨论... 179
4.3.4 例题解析... 179
练习... 186
4.4 所有顶点之间的最短路径—
Floyd算法... 189
4.4.1 算法思想... 189
4.4.2 算法实现... 191
4.4.3 关于Floyd算法的进一步
分析... 194
4.4.4 例题解析... 194
练习... 202
4.5 差分约束系统... 208
4.5.1 差分约束系统与最短路径... 208
4.5.2 例题解析... 210
练习... 219
第5章 可行遍性问题... 223
5.1 欧拉回路... 223
5.1.1 基本概念及定理... 223
5.1.2 欧拉回路的判定... 227
练习... 234
5.2 欧拉回路的求解... 235
5.2.1 DFS搜索求解欧拉回路... 235
5.2.2 Fleury(佛罗莱)算法... 244
练习... 248
5.3 中国邮递员问题... 250
5.4 汉密尔顿回路... 251
5.4.1 基本概念及定理... 251
5.4.2 汉密尔顿回路求解... 253
第6章 网络流问题... 258
6.1 网络最大流... 258
6.1.1 基本概念... 259
6.1.2 最大流最小割定理... 263
6.1.3 网络最大流的求解... 264
6.1.4 一般增广路方法——
Ford-Fulkerson算法... 265
6.1.5 最短增广路算法... 273
6.1.6 连续最短增广路算法——
Dinic算法... 277
6.1.7 一般预流推进算法... 278
6.1.8 最高标号预流推进算法... 282
6.1.9 网络最大流算法总结... 283
6.1.10 例题解析... 283
练习... 299
6.2 最小割的求解... 303
练习... 316
6.3 流量有上下界的网络的最大流和
最小流... 318
6.3.1 流量有上下界的容量网络... 318
6.3.2 流量有上下界的网络的
最大流... 321
6.3.3 流量有上下界的网络的
最小流... 322
6.3.4 例题解析... 329
练习... 342
6.4 最小费用最大流... 343
6.4.1 基本概念... 343
6.4.2 最小费用最大流算法... 344
6.4.3 例题解析... 347
练习... 356
第7章 支配集、覆盖集、独立集与匹配... 360
7.1 点支配集、点覆盖集、点独立集... 360
7.1.1 点支配集... 360
7.1.2 点覆盖集... 362
7.1.3 点独立集... 363
7.1.4 点支配集、点覆盖集、
点独立集之间的联系... 365
7.2 点支配集、点覆盖集、点独立集的
求解... 365
7.2.1 逻辑运算... 365
7.2.2 极小点支配集的求解... 366
7.2.3 极小点覆盖集、极大点
独立集的求解... 366
7.3 边覆盖集与边独立集... 367
7.3.1 边覆盖集... 367
7.3.2 边独立集(匹配)368
7.3.3 最大边独立集(最大匹配)与
最小边覆盖集之间的联系... 370
7.4 匹配问题... 371
7.4.1 完美匹配... 371
7.4.2 二部图的完备匹配与
完美匹配... 372
7.4.3 最佳匹配... 372
7.4.4 匹配问题求解的基本概念及
思路... 372
7.5 二部图最大匹配问题的求解... 374
7.5.1 网络流解法... 374
7.5.2 匈牙利算法... 376
7.5.3 例题解析... 379
练习... 396
第8章 图的连通性问题... 402
8.1 基本概念... 402
8.1.1 连通图与非连通图... 402
8.1.2 无向图的点连通性... 403
8.1.3 无向图的边连通性... 405
8.1.4 无向图顶点连通性和
边连通性的联系... 406
8.1.5 有向图的连通性... 406
8.2 无向图点连通性的求解及应用... 407
8.2.1 关节点的求解... 407
8.2.2 重连通分量的求解... 414
8.2.3 顶点连通度的求解... 417
练习... 421
8.3 无向图边连通性的求解及应用... 424
8.3.1 割边的求解... 424
8.3.2 边双连通分量的求解... 428
8.3.3 边连通度的求解... 436
练习... 437
8.4 有向图强连通性的求解及应用... 440
8.4.1 有向图强连通分量的
求解算法... 440
8.4.2 有向图强连通分量的应用... 442
练习... 458
第9章 平面图及图的着色问题... 462
9.1 基本概念... 462
9.1.1 平面图与非平面图... 462
9.1.2 区域与边界... 463
9.1.3 极大平面图与极小非平面图... 464
9.1.4 平面图的对偶图... 464
9.1.5 关于平面图的一些定理... 465
9.2 欧拉公式及其应用... 465
9.2.1 欧拉公式... 465
9.2.2 欧拉公式的应用... 466
练习... 469
9.3 平面图的判定... 470
9.4 图的着色问题... 472
9.4.1 地图染色与四色猜想... 472
9.4.2 图的着色... 472
9.4.3 图着色的应用... 475
9.4.4 图着色求解算法及例题解析... 475
练习... 479
附录 本书例题和练习题目录... 482
索引... 489
参考文献 497
1、采用彩色水泥配制而成。如塑黄石假山时以黄色水泥为主,配以其他色调,这种方法简便易行,但是色调过于呆板和生硬,且颜色种类很有限。2、在白水泥中掺加色料。此方法可以配成各种石色,且色调较为自然逼真,但...
哪里的假山,我可以包上色呵呵,不是开玩笑,我上色有一手,近看跟真石头一模一样,需要的话可以联系。
1、半包包括室内结构改造(如拆墙或新建墙)2、半包包括水电改造施工(给排水设计安装、电路设计安装、洁具安装等)3、半包包括泥水施工(回填、地面找平、防水处理、贴墙砖和地砖等)4、半包包括木作施工(吊顶...
按新奥法施工的指导思想,论述对不同等级的围岩在设计与施 工中应采取的工艺与措施 班级:0803306 学号:13 姓名:夏智超 摘要: 新奥法是应用岩体力学理论,以维护和利用围岩的自承能力为基点,采用锚 杆和喷射混凝土为主要支护手段,及时的进行支护,控制围岩的变形和松弛,使 围岩成为支护体系的组成部分,并通过对围岩和支护的量测、监控来指导隧道施 工和地下工程设计施工的方法和原则。 新奥法是在利用围岩本身所具有的承载效能的前提下,采用毫秒爆破和光面 爆破技术,进行全断面开挖施工,并以形成复合式内外两层衬砌来修建隧道的洞 身,即以喷混凝土、锚杆、钢筋网、钢支撑等为外层支护形式,称为初次柔性支 护,系在洞身开挖之后必须立即进行的支护工作。因为蕴藏在山体中的地应力由 于开挖成洞而产生再分配,隧道空间靠空洞效应而得以保持稳定,也就是说,承 载地应力的主要是围岩体本身,而采用初次喷锚柔性支护的
监理工作内容及作业指导书汇编内容介绍 1 工作程序 1.1项目监理机构的组建 工程建设监理委托合同签订后,监理公司确定项目总监理工程师人 选,监理公司经理批准后,形成正式任命总监理工程师文件,抄送建 设单位和各承包单位。 项目总监理工程师综合考虑工程规模、工程特点、 建设地点、涉及专 业、复杂程度等因素, 本着精简、高效的原则,提出项目总监理工程 师代表(有必要设置时) 、专业监理工程师、监理员的配备计划,经 公司负责人同意后, 正式确定项目监理机构组成人员, 并确立项目监 理机构。 项目监理内部工作交底规定 为了保证监理工作的有效实施, 在监理工作正式开展之前, 项目总 监应组织和主持项目监理部内部的交底工作。为使工作交底规范化、 制度化,特制定本标准。 1 范围 本标准规定了现场监理工作前内部工作交底的内容、方法、要求。 本标准适用于项目监理部内部的工作交底。 2 规范性引用文件 监理
扩展先序遍历算法实现
用二叉链表做为存储结构,先序遍历算法可描述为:
void InOrder(BinTree T)
{ //算法里①~⑥是为了说明执行过程加入的标号
① if(T) { // 如果二叉树非空
② printf("%c",T->data); // 访问结点 ③ InOrder(T->lchild); ④ InOrder(T->rchild); ⑤ }
⑥ } // InOrder
void createBiTree(BiTree *bt){
char ch;
ch = getchar();
if(ch == '.')
*bt = NULL;
else{
*bt = (BiTree)malloc(sizeof(BiTNode));//向内存申请节点空间
(*bt)->data = ch;
createBiTree(&((*bt)->LChild));//生成左子树
createBiTree(&((*bt)->RChild));//生成右子树
}
}/*createBiTree*/
/*==================打印二叉树=============*/
void printTree(BiTree bt,int nLayer){
int i;
if(bt == NULL)
return ;
printTree(bt ->RChild,nLayer+1);
for(i=0;i<nLayer;i++)
printf(" ");
printf("%c\n",bt->data);
printTree(bt->LChild,nLayer+1);
}
图一:
(a)1 2 4 . . 6 . . 3 . 5 . 7 . 8 . .
(b)1 2 4 . . 5 . . 3 6 . . 7 . . 运行结果:
图二:
(a)7 3 1 . . 2 . . 9 . 10 . 8 . 4 . .
(b)7 3 1 . . 5 4 . . . 11 10 . . 15 . .
运行结果:
制冷空调装置是用能大户。计算机仿真是制冷系统及其部件高效节能设计的重要手段。由于制冷系统及其部件的构成趋于多样化,仿真算法的通用性与可靠性在工程实践中受到极大挑战。申请人根据多年的理论和应用研究经验,提出引入图论方法,对制冷系统及其部件的通用化描述方法和仿真算法的自动生成方法进行研究。研究内容主要包括三大部分:一是不同循环方式下制冷系统稳态和动态仿真算法的通用生成方法。通过将表示制冷循环的压焓图改 2100433B
批准号 |
50306016 |
项目名称 |
制冷系统仿真算法的图论生成方法 |
项目类别 |
青年科学基金项目 |
申请代码 |
E0601 |
项目负责人 |
张春路 |
负责人职称 |
教授 |
依托单位 |
上海交通大学 |
研究期限 |
2004-01-01 至 2004-12-31 |
支持经费 |
8(万元) |