第七章 图

合集下载

第七章 图论

第七章  图论

12
7.1 图及相关概念
7.1.5 子图
Graphs
图论
定义7-1.8 给定图G1=<V1,E1>和G2=<V2,E2> , (1)若V1V2 ,E1E2 ,则称G1为G2的子图。 (2)若V1=V2 ,E1E2 ,则称G1为G2的生成子图。
上图中G1和G2都是G的子图,
但只有G2是G的生成子图。
chapter7
18
7.1 图及相关概念
7.1.6 图的同构
Graphs
图论
【例4】 设G1,G2,G3,G4均是4阶3条边的无向简单图,则
它们之间至少有几个是同构的? 解:由下图可知,4阶3条边非同构的无向简单图共有3个, 因此G1,G2,G3,G4中至少有2个是同构的。
4/16/2014 5:10 PM
4/16/2014 5:10 PM chapter7 10
7.1 图及相关概念
7.1.3 完全图
Graphs
图论
【例2】证明在 n(n≥2 )个人的团体中,总有两个人在 此团体中恰好有相同个数的朋友。 分析 :以结点代表人,二人若是朋友,则在结点间连上一 证明:用反证法。 条边,这样可得无向简单图G,每个人的朋友数即该结点 设 G 中各顶点的度数均不相同,则度数列为 0 , 1 , 2 , …, 的度数,于是问题转化为: n 阶无向简单图 G中必有两个 n-1 ,说明图中有孤立顶点,与有 n-1 度顶点相矛盾(因 顶点的度数相同。 为是简单图),所以必有两个顶点的度数相同。
vV1
deg(v) deg(v) deg(v) 2 | E |
vV2 vV
由于 deg( v) 是偶数之和,必为偶数,
vV1

第七章 神经组织思维导图

第七章 神经组织思维导图

第七章 神经组织总论组成神经细胞(神经元)神经胶质细胞功能神经元接受刺激、整合信息、传导冲动把接受的信息加以分析或贮存传递信息给各种肌细胞、腺细胞等效应细胞,以产生效应意识、记忆、思维和行为调节的基础神经胶质细胞支持、保护、营养和绝缘等参与神经递质和活性物质的代谢神经元神经元的结构胞体形态圆形,锥形,梭形和星形等分布位于灰质、皮质和神经节内功能神经元的营养和代谢中心光镜电镜结构细胞核位于胞体中央,大而圆核被膜明显着色浅,核仁大而圆细胞质特征性结构尼氏体神经原纤维两者不可在同一切片看到尼氏体强嗜碱性,HE染色紫蓝色均匀分布粗块状或小颗粒状有发达的粗面内质网和游离核糖体合成更新细胞器所需的结构蛋白、神经递质所需的酶类及肽类神经调质但是,不合成神经递质神经原纤维(嗜银纤维)HE染色切片无法分辨镀银染色呈棕黑色细丝,交错排列成网构成神经丝由神经丝蛋白构成的中间丝微管微管相关蛋白2构成神经元的细胞骨架,微管参与物质运输有脂褐素一种溶酶体的残余体细胞膜可兴奋膜双层脂质结构接受刺激、处理信息、产生并传导神经冲动树突每个神经元有一至多个树突内部结构同胞体有尼氏体和神经原纤维功能极大地扩展了神经元接受刺激的表面积轴突每个神经元有一条轴突无尼氏体,有神经原纤维、神经丝、微管、微丝比树突细无粗面内质网和游离核糖体神经丝、微管和微丝之间均有横桥连接, 构成轴质中的网架轴突运输(轴突内的物质运输)慢速轴突运输运输新形成的神经丝、微丝和微管快速顺向轴突运输快速逆向轴突运输神经元的分类按神经元的突起数量多极神经元双极神经元假单极神经元呈T形分为两支,周围突(分布到周围器官,接受刺激,具有树突的功能)和中枢突(进入中枢神经系统,传出冲动,为轴突)按神经元轴突的长短高尔基Ⅰ型神经元长轴突高尔基Ⅱ型神经元短轴突按神经元的功能感觉神经元(传入)多为假单极神经元运动神经元(传出)一般为多极神经元中间神经元主要为多极神经元学习、记忆和思维的基础按神经递质和调质的化学性质胆碱能神经元去甲肾上腺素能神经元胺能神经元氨基酸能神经元肽能神经元一氧化氮(NO)和一氧化碳(CO)也是一种神经递质突触概念神经元与神经元之间,或神经元与效应细胞之间传递信息的结构细胞连接方式轴-体突触轴-树突触轴-棘突触分类化学突触(人体主要)以神经递质作为传递信息的媒介HE染色不可分辨电突触缝隙连接,以电流作为信息载体存在于中枢神经系统和视网膜内的同类神经元之间化学性突触的结构 (电镜)突触前成分在镀银染色的切片呈棕黑色的圆形颗粒,称突触小体有线粒体、微丝和微管,无神经丝有突触小泡含神经递质或调质表面附有一种蛋白质,称突触素,将小泡连接干细胞骨架突触前膜较厚突触间隙15~30nm突触后成分突触后膜含有特异性的神经递质和调质的受体及离子通道突触的兴奋或抑制,取决于神经递质及其受体的种类Na+ → 兴奋Cl- → 抑制特点一个神经元可以通过突触把信息传递给许多其他神经元或效应细胞一个运动神经元可同时支配上千条骨骼肌纤维一个神经元也可以通过突触接受来自许多其他神经元的信息小脑的浦肯野细胞的树突上有数十万个突触神经胶质细胞功能支持、营养、保护和分隔神经元保证信息传递的专一性和不受干扰中枢神经系统胶质细胞HE染色中,除室管膜细胞外,都不易区分星形胶质细胞形态体积最大星形核圆或卵圆形胞质内含胶质丝(胶质原纤维酸性蛋白构成的中间丝)有些突起末端扩展形成脚板在脑和脊髓表面形成胶质界膜构成血-脑屏障的神经胶质膜功能支持和绝缘分泌神经营养因子和多种生长因子维持神经元的分化、功能,以及创伤后神 经元的可塑性变化组织损伤时,细胞增生形成胶质瘢痕少突胶质细胞分布神经元胞体附近及轴突周围形态胞体较小突起较少功能是中枢神经系统的髓鞘形成细胞(与施万细胞一起作用)小胶质细胞形态体积最小核小、染色深源于血液的单核细胞从两端发起突起功能中枢神经系统损伤时转变为巨噬细胞,具有吞噬作用室管膜细胞分布衬在脑室和脊髓中央管的腔面形态呈立方或柱状单层上皮游离面有微绒毛,少数细胞有纤毛功能参与产生脉络丛的脑脊液周围神经系统胶质细胞施万细胞参与周围神经系统中神经纤维的构成参与有髓神经纤维髓鞘形成分泌神经营养因子,促进受损的神经元存活及其轴突的再生卫星细胞有突起一层扁平或立方形细胞支持、保护、营养作用神经纤维和神经神经纤维构成神经元的长轴突神经胶质细胞根据神经胶质细胞是否形成髓鞘有髓神经纤维无髓神经纤维神经神经末梢。

第七章吸附与离子交换_图文

第七章吸附与离子交换_图文

活性炭对物质的吸附规律
活性炭是非极性吸附剂,因此在水中吸附能力大于有 机溶剂中的吸附能力。 针对不同的物质,活性炭的吸附遵循以下规律: ①对极性基团多的化合物的吸附力大于极性基团少的化合
物; ②对芳香族化合物的吸附能力大于脂肪族化合物; ③对相对分子量大的化合物的吸附力大于相对分子量小的
化合物; ④pH 值的影响 ;
7-3
7.2吸附过程的理论基础
7.2.1吸附原理
固体的分类:多孔和非多孔性 比表面的组成:多孔性固体的比表面是由“外表
面”和“内表面”所组成。表面积大并 且有较高的吸附势。 表面力的产生和吸附力的关系:见图7-4 界面分子的力场是不饱和的,能从外界吸附分 子、原子、或离子,形成多分子层或单分子层。 吸附过程中的几个名词: ⑴吸附作用 ⑵吸附剂 ⑶吸附物(质)
7.1概述
7.1.1什么叫吸附
吸附是利用吸附剂对液体或气体中某一组分具有选择性吸 附的能力,使其富集在吸附剂表面的过程。
吸附过程通常包括: 待分离料液与吸附剂混合、吸附质被吸附到吸附剂表
面、料液流出、吸附质解吸回收等四个过程。
料液与吸 附剂混合
Step1
吸附质 被吸附
Step2
料液 流出
Step3
001×7-交联度为7%的苯乙烯 系凝胶型强酸性阳离子交换树脂
骨架代号 D315:大孔型丙烯酸弱碱
分类代号
性阴离子交换树脂
大孔型代号
大孔型
代号 0 1 2 3 4 5 6
离子交换树脂命名法代号表
分类名称
骨架名称
强酸性
苯乙烯系
弱酸性
丙烯酸系
强碱性
酚醛系
弱碱性
环氧系
螯合性
乙烯吡啶系

第七章图 习题答案

第七章图 习题答案

第七章图习题答案基础知识:7.1 在图7.23所示的各无向图中:(1)找出所有的简单环。

(2)哪些图是连通图?对非连通图给出其连通分量。

(3)哪些图是自由树(或森林)?答:(1)所有的简单环:(同一个环可以任一顶点作为起点)(a)1231(b)无(c)1231、2342、12341(d)无(2)连通图:(a)、(c)、(d)是连通图,(b)不是连通图,因为从1到2没有路径。

具体连通分量为:(3)自由树(森林):自由树是指没有确定根的树,无回路的连通图称为自由树:(a)不是自由树,因为有回路。

(b)是自由森林,其两个连通分量为两棵自由树。

(c)不是自由树。

(d)是自由树。

7.2 在图7.24(下图)所示的有向图中:(1) 该图是强连通的吗? 若不是,则给出其强连通分量。

(2) 请给出所有的简单路径及有向环。

(3) 请给出每个顶点的度,入度和出度。

(4) 请给出其邻接表、邻接矩阵及逆邻接表。

答:(1)该图是强连通的,所谓强连通是指有向图中任意顶点都存在到其他各顶点的路径。

(2)简单路径是指在一条路径上只有起点和终点可以相同的路径:有v1v2、v2v3、v3v1、v1v4、v4v3、v1v2v3、v2v3v1、v3v1v2、v1v4v3、v4v3v1、v3v1v4、另包括所有有向环,有向环如下:v1v2v3v1、v1v4v3v1(这两个有向环可以任一顶点作为起点和终点)(3)每个顶点的度、入度和出度:D(v1)=3ID(v1)=1OD(v1)=2D(v2)=2 ID(v2)=1OD(v2)=1D(v3)=3 ID(v3)=2OD(v3)=1D(v4)=2 ID(v4)=1OD(v4)=1(4)邻接表:(注意边表中邻接点域的值是顶点的序号,这里顶点的序号是顶点的下标值-1) vertex firstedge next┌─┬─┐┌─┬─┐┌─┬─┐0│v1│─→│ 1│─→│ 3│∧│├─┼─┤├─┼─┤└─┴─┘1│v2│─→│ 2│∧│├─┼─┤├─┼─┤2│v3│─→│ 0│∧│├─┼─┤├─┼─┤3│v4│─→│ 2│∧│└─┴─┘└─┴─┘逆邻接表:┌─┬─┐┌─┬─┐0│v1│─→│ 2│∧│├─┼─┤├─┼─┤1│v2│─→│ 0│∧│├─┼─┤├─┼─┤┌─┬─┐2│v3│─→│ 1│─→│ 3│∧│├─┼─┤├─┼─┤└─┴─┘3│v4│─→│ 0│∧│└─┴─┘└─┴─┘邻接矩阵:0 1 0 10 0 1 01 0 0 00 0 1 07.3 假设图的顶点是A,B...,请根据下述的邻接矩阵画出相应的无向图或有向图。

《数据结构图论部分》PPT课件

《数据结构图论部分》PPT课件

Page 4
2020/11/24
哥尼斯堡七桥问题
能否从某个地方出发,穿过所有的桥仅一次 后再回到出发点?
Page 5
2020/11/24
七桥问题的图模型
欧拉回路的判定规则:
1.如果通奇数桥的地方多于
C
两个,则不存在欧拉回路;
2.如果只有两个地方通奇数
桥,可以从这两个地方之一
A
B 出发,找到欧拉回路;
V4 是有向边,则称该图为有向图。
Page 9
2020/11/24
简单图:在图中,若不存在顶点到其自身的边,且同 一条边不重复出现。
V1
V2
V3
V4
V5
非简单图
V1
V2
V3
V4
V5
非简单图
V1
V2
V3
V4
V5
简单图
❖ 数据结构中讨论的都是简单图。
Page 10
2020/11/24
图的基本术语
邻接、依附
DeleteVex(&G, v); 初始条件:图 G 存在,v 是 G 中某个顶点。 操作结果:删除 G 中顶点 v 及其相关的弧。
Page 34
2020/11/24
InsertArc(&G, v, w); 初始条件:图 G 存在,v 和 w 是 G 中两个顶点。 操作结果:在 G 中增添弧<v,w>,若 G 是无向的,则还
Page 2
2020/11/24
• 知识点
– 图的类型定义 – 图的存储表示 – 图的深度优先搜索遍历和广度优先搜索遍历 – 无向网的最小生成树 – 拓扑排序 – 关键路径 – 最短路径
Page 3

图

第七章图一、选择题1、对于具有n个顶点的图,若采用邻接矩阵表示,则该矩阵的大小为()。

A. nB. n2C. n-1D. (n-1)22、如果从无向图的任一顶点出发进行一次深度优先搜索即可访问所有顶点,则该图一定是()。

A. 完全图B. 连通图C. 有回路D. 一棵树解析:在无向图中,如果从顶点v到顶点v1存在路径,则称v和v1是连通的。

完全图:若一个图的每一对不同顶点都恰有一条边相连。

3、关键路径是事件结点网络中()。

A. 从源点到汇点的最长路径B. 从源点到汇点的最短路径C. 最长的回路D. 最短的回路4、下面()可以判断出一个有向图中是否有环(回路)。

A. 广度优先遍历B. 拓扑排序C. 求最短路径D. 求关键路径5、带权有向图G用邻接矩阵A存储,则顶点i的入度等于A中()。

A. 第i行非无穷的元素之和B. 第i列非无穷的元素个数之和C. 第i行非无穷且非0的元素个数D. 第i行与第i列非无穷且非0的元素之和6、采用邻接表存储的图,其深度优先遍历类似于二叉树的()。

A. 中序遍历B. 先序遍历C. 后序遍历D. 按层次遍历7、无向图的邻接矩阵是一个()。

A. 对称矩阵B. 零矩阵C. 上三角矩阵D. 对角矩阵8、当利用大小为N的数组存储循环队列时,该队列的最大长度是()。

A. N-2B. N-1C. ND. N+1当利用大小为n的数组顺序存储一个队列时,该队列的最大长度为?解析:n+1 因为队列的头指针指向的是第一个元素的前一个结点,而不是指向第一个元素,因此队列的头指针要占用一个结点长度,所以队列的长度就是n+1;9、邻接表是图的一种()。

A. 顺序存储结构B.链式存储结构C. 索引存储结构D. 散列存储结构10、下面有向图所示的拓扑排序的结果序列是()。

A. 125634B. 516234C. 123456D. 52164313256411、在无向图中定义顶点vi与vj之间的路径为从vi到vj的一个()。

第七章 序列图

第七章 序列图

序列图的基本概念
2. 序列图在项目开发里的作用
序列图作为一种描述在给定语境中消息是如何在对象间传递的图 形化方式,在使用其进行建模时,主要可以将其用途分为以下三 个方面: (1)确认和丰富一个使用语境的逻辑表达。一个系统的使用情境就 是系统潜在的使用方式的描述,也就是它的名称所要描述的。一 个使用情境的逻辑可能是一个用例的一部分,或是一条控制流。 (2)细化用例的表达。我们前面已经提到,序列图的主要用途之一, 就是把用例表达的需求,转化为进一步、更加正式层次的精细表 达。用例常常被细化为一个或者更多的序列图。 (3)有效地描述如何分配各个类的职责以及各类具有相应职责的原 因。我们可以根据对象之间的交互关系来定义类的职责,各个类 之间的交互关系构成一个特定的用例。例如,“Customer对象向 Address对象请求其街道名称”指出Customer对象应该具有“知 道其街道名”这个职责。
序列图中的项目相关概念
2. 分支与从属流
在UML中,存在两种方式可以来修改序列图中消息的 控制流,分别是:分支和从属流。 分支是指的是从同一点发出多个消息的并指向不同的 对象,根据条件是否互斥,可以有条件和并行两种结 构。由于序列图只表示某一个活动按照时间顺序的经 历过程,所以在Rational Rose 2003中,对序列图的分 支画法没有明显的支持。 从属流指的是从同一点发出多个消息指向同一个对象 的不同生命线。从属流在Rational Rose 2003中不支持, 因为添加从属流以后会明显增加序列图的复杂度。
确定序列对象确定序列对象建模序列图的下一步是从左到右布置在该工作流程中所有的参与者和对象同时也包含要添加消息的对象所有的参与者和对象同时也包含要添加消息的对象??建模序列图的下一步是从左到右布置在该工作流程中生命线

第7章图习题及参考答案

第7章图习题及参考答案

第7章-图习题及参考答案第7章习题一、单项选择题1.在无向图中定义顶点的度为与它相关联的()的数目。

A. 顶点B. 边C. 权D. 权值2.在无向图中定义顶点v i与v j之间的路径为从v i到达v j的一个()。

A. 顶点序列B. 边序列C. 权值总和D.边的条数3.图的简单路径是指()不重复的路径。

A. 权值B. 顶点C. 边D. 边与顶点均4.设无向图的顶点个数为n,则该图最多有()条边。

A. n-1B. n(n-1)/2C. n(n+1)/2D.n(n-1)5.n个顶点的连通图至少有()条边。

A. n-1B. nC. n+1D. 06.在一个无向图中,所有顶点的度数之和等于所有边数的( ) 倍。

A. 3B. 2C. 1D. 1/27.若采用邻接矩阵法存储一个n个顶点的无向图,则该邻接矩阵是一个( )。

A. 上三角矩阵B. 稀疏矩阵C. 对角矩阵D. 对称矩阵8.图的深度优先搜索类似于树的()次序遍历。

A. 先根B. 中根C. 后根D. 层次9.图的广度优先搜索类似于树的()次序遍历。

A. 先根B. 中根C. 后根D. 层次10.在用Kruskal算法求解带权连通图的最小(代价)生成树时,选择权值最小的边的原则是该边不能在图中构成()。

A. 重边B. 有向环C. 回路D. 权值重复的边11.在用Dijkstra算法求解带权有向图的最短路径问题时,要求图中每条边所带的权值必须是()。

A. 非零B. 非整C. 非负D. 非正12.设G1 = (V1, E1) 和G2 = (V2, E2) 为两个图,如果V1 ⊆ V2,E1 ⊆ E2,则称()。

A. G1是G2的子图B. G2是G1的子图C. G1是G2的连通分量D. G2是G1的连通分量13.有向图的一个顶点的度为该顶点的()。

A. 入度B. 出度C. 入度与出度之和D. (入度﹢出度))/214.一个连通图的生成树是包含图中所有顶点的一个()子图。

第7章 图论 -5二部图、平面图

第7章 图论 -5二部图、平面图

第9章 图论
2)在G中求最大匹配 把边 (a2,b2) 从 M 中去掉,而把 (a1,b2) 和 (a2,b4) 添加到 M 中, 得到新的匹配M′=(a1,b2),(a2,b4),(a3,b3), (a5,b5),如下图所示。 对于匹配M′= (a1,b2),(a2,b4),(a3,b3), (a5,b5)重复上述过程, 已找不到M′可扩路。所以M′就是最大匹配。
第9章 图论
在子图H中,任一结点至多与M中的一条边关联且与M1中 一条边关联。因而任一结点的度数是1或2。故H的连通分支是 一条路,或者是一个回路。 如果 H的连通分支是一条路 P,则它是 M 交替路,也是 M1 交替路。如果P的两个端点均与M中的边关联,则P是M1可扩路。 由假设知, M1 是最大匹配,所以,不存在 M1 可扩路,得到矛 盾。如果P的两个端点均与M1的边关联,那么P是一条M可扩路 与题设矛盾。故 P 只能是一个端点与 M 中的边关联,另一个端 点与M1中的边关联,这样P中属于M的边数与属于M1的边数相 等。 如果 H的连通分支是一个回路,回路中的边交替地属于 M 和M1,因而属于M的边数与属于M1的边数相等。 从上面可以看到,H中属于M的边与属于M1的边的数目相 等。再加上既属于M又属于M1的边,可以得出:M中的边数与 M1中的边数相等。所以,M是最大匹配。
第9章 图论
由上述讨论可见:利用可扩路可以增加匹配所含的边数。 不断地寻求G的可扩路,直到再也找不到新的可扩路,就可得 到一个最大匹配。将这个结论写成下列的定理。 定理 7.5.2 设 G=V1,V2,E是二部图, M为G的最大匹配的充分 必要条件是G中不存在M可扩路。 证明:设M为G的最大匹配,下证G中不存在M可扩路。 如果G中存在一条M可扩路,则可以得到比M的边数多1的 匹配,所以M 不是最大匹配,矛盾。所以G 中不存在M 可扩路。 设G中不存在M可扩路,下证M为G的最大匹配。 设M1是最大匹配,证明|M|=|M1|。 考察属于M而不属于M1和属于M1而不属于M中的边,由这 些边连同它们的端点一起构成G的子图H。

数据结构第七章--图(严蔚敏版)

数据结构第七章--图(严蔚敏版)
9个顶点 个顶点
8个顶点的无向图最多有 条边且该图为连通图 个顶点的无向图最多有28条边且该图为连通图 个顶点的无向图最多有 连通无向图构成条件:边 顶点数 顶点数-1)/2 顶点数*(顶点数 连通无向图构成条件 边=顶点数 顶点数 顶点数>=1,所以该函数存在单调递增的单值反 顶点数 所以该函数存在单调递增的单值反 函数,所以边与顶点为增函数关系 所以28个条边 函数 所以边与顶点为增函数关系 所以 个条边 的连通无向图顶点数最少为8个 所以28条边的 的连通无向图顶点数最少为 个 所以 条边的 非连通无向图为9个 加入一个孤立点 加入一个孤立点) 非连通无向图为 个(加入一个孤立点
28
无向图的邻接矩阵为对称矩阵
2011-10-13
7.2
图的存储结构
Wij 若< vi,vj > 或<vj,v i > ∈E(G)
若G是网(有权图),邻接矩阵定义为 是网(有权图), ),邻接矩阵定义为
A [ i,j ] = , 0或 ∞
如图: 如图:
V1
若其它
V2
3 4
2
V3
2011-10-13
C
A
B
D 2011-10-13 (a )
3
Königsberg七桥问题
• Königsberg七桥问题就是说,能否从某点出发 通过每桥恰好一次回到原地?
C
C
A B

A D
B
D (a)
2011-10-13
(b)
4
第七章 图
7.1 图的定义 7.2 图的存储结构 7.3 图的遍历 7.4 图的连通性问题 7.5 有向无环图及其应用 7.6 最短路径
2011-10-13

关键路径法

关键路径法
为此,可利用上节介绍的拓扑排序得到 的顶点次序进行向汇点的递推,向源点 的递推按相反的顺序进行即可,不必再 重新排序。
关键路径算法
(1) 输入e条有向边<j,k>,建立AOE网络的存储 结构;
(2) 从源点出发,令ev[1] =0,按拓扑排序的序 列求其余各顶点的最早出现时间ev[i](2≤i≤n)。 若拓扑排序序列中的顶点个数小于网络中的顶 点数n,则说明网络中存在环路,算法中止执 行;否则执行(3);
ev[k]和Lv[k]可以采用下面的递推公式计算: (1) 向汇点递推
由源点的ev[1]=0开始,利用公式:
式向中汇p点表的示方所向有递指推向,顶可点逐的个边求的出集各合顶,点如的图ev 。 7.2意义为:从指向顶点Vk的各边的活动中 取最晚完成的一个活动的完成时间作为Vk的最 早出现时间ev[k]。
数据结构
数据结构
第七章 图
第七章 图
关键路径法
关键路径法是采用边表示活动(Activity On Edge)的网络,简称为AOE网络。
AOE网络是一个带权的有向无环路图,其中, 每个顶点代表一个事件(Event),事件说明某 些活动或某一项活动的完成,即阶段性的结 果。
离开某顶点的各条边所代表的活动,只有在 该顶点对应的事件出现后才能开始。
完成整个工程所需的时间取决于从开始点到 结束点的最长路径长度,此长度最大的路径 叫做关键路径。
分析关键路径的目的是辨别哪些是关键活动, 以便争取提高关键活动的效率,缩短整个工 期。
在描述关键路径的算法时,设活动ai由弧 <j,k>表示,要确定如下几个相关的量:
(1) 事件Vj的最早出现时间和活动的最早开始 时间:从源点V1到某顶点Vj的最长路径长度 叫作事件j的最早出现时间,表示成ev[j]。顶 点Vj的最早出现时间ev[j]决定了从Vj指出的 各条边所代表活动的最早开始时间,因为事 件j不出现,它后面的各项活动就不能开始。 我们以e[i]表示活动ai的最早开始时间。显然 e[i]= ev[j] 。

离散数学第七章图的基本概念知识点总结

离散数学第七章图的基本概念知识点总结

图论部分第七章、图的基本概念7.1 无向图及有向图无向图与有向图多重集合: 元素可以重复出现的集合无序积: A&B={(x,y) | x∈A∧y∈B}定义无向图G=<V,E>, 其中(1) 顶点集V≠∅,元素称为顶点(2) 边集E为V&V的多重子集,其元素称为无向边,简称边.例如, G=<V,E>如图所示, 其中V={v1, v2, …,v5}, E={(v1,v1), (v1,v2),(v2,v3), (v2,v3), (v2,v5), (v1,v5), (v4,v5)} ,定义有向图D=<V,E>, 其中(1) V同无向图的顶点集, 元素也称为顶点(2) 边集E为V⨯V的多重子集,其元素称为有向边,简称边.用无向边代替D的所有有向边所得到的无向图称作D的基图,右图是有向图,试写出它的V和E注意:图的数学定义与图形表示,在同构(待叙)的意义下是一一对应的通常用G表示无向图, D表示有向图, 也常用G泛指无向图和有向图, 用e k表示无向边或有向边.V(G), E(G), V(D), E(D): G和D的顶点集, 边集.n 阶图: n个顶点的图有限图: V, E都是有穷集合的图零图: E=∅平凡图: 1 阶零图空图: V=∅顶点和边的关联与相邻:定义设e k=(v i,v j)是无向图G=<V,E>的一条边, 称v i ,vj为e k的端点, e k与v i (v j)关联. 若v i ≠v j, 则称e k与v i (v j)的关联次数为1;若v i = v j, 则称e k为环, 此时称e k与v i 的关联次数为2; 若v i不是e k端点,则称e k与v i 的关联次数为0. 无边关联的顶点称作孤立点.定义设无向图G=<V,E>, v i,v j∈V, e k,e l∈E,若(v i,v j) ∈E, 则称v i,v j相邻; 若e k,e l至少有一个公共端点, 则称e k,e l相邻.对有向图有类似定义. 设e k=〈v i,v j〉是有向图的一条边,又称v i是e k的始点, v j 是e k的终点, v i邻接到v j, v j邻接于v i.邻域和关联集顶点的度数设G=<V,E>为无向图, v∈V,v的度数(度) d(v): v作为边的端点次数之和悬挂顶点: 度数为1的顶点悬挂边: 与悬挂顶点关联的边G的最大度∆(G)=max{d(v)| v∈V}G的最小度δ(G)=min{d(v)| v∈V}例如d(v5)=3, d(v2)=4, d(v1)=4,∆(G)=4, δ(G)=1,v4是悬挂顶点, e7是悬挂边, e是环1设D=<V,E>为有向图, v∈V,v的出度d+(v): v作为边的始点次数之和v的入度d-(v): v作为边的终点次数之和v的度数(度) d(v): v作为边的端点次数之和d(v)= d+(v)+ d-(v)D的最大出度∆+(D), 最小出度δ+(D)最大入度∆-(D), 最小入度δ-(D)最大度∆(D), 最小度δ(D)例如d+(a)=4, d-(a)=1, d(a)=5,d+(b)=0, d-(b)=3, d(b)=3,∆+(D)=4, δ+(D)=0, ∆-(D)=3,δ-(D)=1,∆(D)=5, δ(D)=3.握手定理定理任意无向图和有向图的所有顶点度数之和都等于边数的2倍, 并且有向图的所有顶点入度之和等于出度之和等于边数.证G中每条边(包括环)均有两个端点,所以在计算G中各顶点度数之和时,每条边均提供2度,m条边共提供2m度. 有向图的每条边提供一个入度和一个出度, 故所有顶点入度之和等于出度之和等于边数.图的度数列设无向图G的顶点集V={v1, v2, …, v n}G的度数列: d(v), d(v2), …, d(v n)1如右图度数列:4,4,2,1,3设有向图D的顶点集V={v1, v2, …, v n}D的度数列: d(v), d(v2), …, d(v n)1D的出度列: d+(v), d+(v2), …, d+(v n)1D的入度列: d-(v), d-(v2), …, d-(v n)1如右图度数列:5,3,3,3出度列:4,0,2,1入度列:1,3,1,2例1 (3,3,3,4), (2,3,4,6,8)能成为图的度数列吗?解不可能. 它们都有奇数个奇数.例2 已知图G有10条边, 4个3度顶点, 其余顶点的度数均小于等于2, 问G 至少有多少个顶点?解设G有n个顶点. 由握手定理,4⨯3+2⨯(n-4)≥2⨯10解得n≥8例3 证明不存在具有奇数个面且每个面都具有奇数条棱的多面体.证用反证法. 假设存在这样的多面体,作无向图G=<V,E>, 其中V={v | v为多面体的面},E={(u,v) | u,v∈V∧u与v有公共的棱∧u≠v}.根据假设, |V|为奇数且∀v∈V, d(v)为奇数. 这与握手定理的推论矛盾. 多重图与简单图定义 (1) 在无向图中,如果有2条或2条以上的边关联同一对顶点, 则称这些边为平行边, 平行边的条数称为重数.(2)在有向图中,如果有2条或2条以上的边具有相同的始点和终点, 则称这些边为有向平行边, 简称平行边, 平行边的条数称为重数.(3) 含平行边的图称为多重图.(4) 既无平行边也无环的图称为简单图.注意:简单图是极其重要的概念图的同构定义设G1=<V1,E1>, G2=<V2,E2>为两个无向图(有向图), 若存在双射函数f: V1→V2, 使得对于任意的v,v j∈V1,i(v i,v j)∈E1(<v i,v j>∈E1)当且仅当(f(v i),f(v j))∈E2(<f(v i),f(v j)>∈E2),并且, (v i,v j)(<v i,v j>)与 (f(v i),f(v j))(<f(v i),f(v j)>)的重数相同,则称G1与G2是同构的,记作G1≅G2.几点说明:图之间的同构关系具有自反性、对称性和传递性.能找到多条同构的必要条件, 但它们都不是充分条件:① 边数相同,顶点数相同② 度数列相同(不计度数的顺序)③ 对应顶点的关联集及邻域的元素个数相同,等等若破坏必要条件,则两图不同构至今没有找到判断两个图同构的多项式时间算法完全图:n阶无向完全图K n: 每个顶点都与其余顶点相邻的n阶无向简单图.简单性质: 边数m=n(n-1)/2, ∆=δ=n-1n阶有向完全图: 每对顶点之间均有两条方向相反的有向边的n阶有向简单图.简单性质: 边数m=n(n-1), ∆=δ=2(n-1),∆+=δ+=∆-=δ-=n-1子图:定义设G=<V,E>, G '=<V ',E '>是两个图(1) 若V '⊆V且E '⊆E,则称G '为G的子图, G为G '的母图, 记作G '⊆G(2) 若G '⊆G 且V '=V,则称G '为G的生成子图(3) 若V '⊂V 或E '⊂E,称G '为G的真子图(4) 设V '⊆V 且V '≠∅, 以V '为顶点集, 以两端点都在V '中的所有边为边集的G的子图称作V '的导出子图,记作G[V '](5) 设E '⊆E且E '≠∅, 以E '为边集, 以E '中边关联的所有顶点为顶点集的G的子图称作E '的导出子图, 记作G[E ']补图:定义设G=<V,E>为n阶无向简单图,以V为顶点集,所有使G成为完全图K n的添加边组成的集合为边集的图,称为G的补图,记作 .若G≅ , 则称G是自补图.例对上一页K4的所有非同构子图, 指出互为补图的每一对子图, 并指出哪些是自补图.7.2 通路、回路、图的连通性简单通(回)路, 初级通(回)路, 复杂通(回)路定义给定图G=<V,E>(无向或有向的),G中顶点与边的交替序列Γ=v0e1v1e2…e l v l,(1) 若∀i(1≤i≤l), v i-1, v i是e i的端点(对于有向图, 要求v i-1是始点, v i是终点), 则称Γ为通路, v0是通路的起点, v l是通路的终点, l为通路的长度. 又若v=v l,则称Γ为回路.(2) 若通路(回路)中所有顶点(对于回路, 除v0=v l)各异,则称为初级通路(初级回路).初级通路又称作路径, 初级回路又称作圈.(3) 若通路(回路)中所有边各异, 则称为简单通路(简单回路), 否则称为复杂通路(复杂回路).说明:表示方法① 用顶点和边的交替序列(定义), 如Γ=v0e1v1e2…e l v l② 用边的序列, 如Γ=e1e2…e l③ 简单图中, 用顶点的序列, 如Γ=v0v1…v l④ 非简单图中,可用混合表示法,如Γ=v0v1e2v2e5v3v4v5环是长度为1的圈, 两条平行边构成长度为2的圈.在无向简单图中, 所有圈的长度≥3; 在有向简单图中, 所有圈的长度≥2.在两种意义下计算的圈个数① 定义意义下在无向图中, 一个长度为l(l≥3)的圈看作2l个不同的圈. 如v0v1v2v0 ,v 1v2vv1, v2v0v1v2, v0v2v1v0 , v1v0v2v1 , v2v1v0v2看作6个不同的圈. 在有向图中, 一个长度为l(l≥3)的圈看作l个不同的圈.② 同构意义下所有长度相同的圈都是同构的, 因而是1个圈.定理在n阶图G中,若从顶点v i到v j(v i≠v j)存在通路,则从v i到v j存在长度小于等于n-1的通路.推论在n阶图G中,若从顶点v i到v j(v i≠v j)存在通路,则从v i到v j存在长度小于等于n-1的初级通路.定理在一个n阶图G中,若存在v i到自身的回路,则一定存在v i到自身长度小于等于n的回路.推论在一个n阶图G中,若存在v i到自身的简单回路,则一定存在长度小于等于n的初级回路.无向图的连通性设无向图G=<V,E>,u与v连通: 若u与v之间有通路. 规定u与自身总连通.连通关系R={<u,v>| u,v∈V且u~v}是V上的等价关系连通图:任意两点都连通的图. 平凡图是连通图.连通分支: V关于连通关系R的等价类的导出子图设V/R={V1,V2,…,V k}, G[V1], G[V2], …,G[V k]是G的连通分支, 其个数记作p(G)=k.G是连通图⇔p(G)=1短程线与距离u与v之间的短程线: u与v之间长度最短的通路(u与v连通)u与v之间的距离d(u,v): u与v之间短程线的长度若u与v不连通, 规定d(u,v)=∞.性质:d(u,v)≥0, 且d(u,v)=0 ⇔u=vd(u,v)=d(v,u)d(u,v)+d(v,w)≥d(u,w)点割集与割点记G-v: 从G中删除v及关联的边G-V ': 从G中删除V '中所有的顶点及关联的边G-e : 从G中删除eG-E': 从G中删除E'中所有边定义设无向图G=<V,E>, V '⊂V, 若p(G-V ')>p(G)且∀V ''⊂V ', p(G-V '')=p(G), 则称V '为G的点割集. 若{v}为点割集, 则称v为割点.边割集与割边(桥)定义设无向图G=<V,E>, E '⊆E, 若p(G-E ')>p(G)且∀E ''⊂E ',p(G-E '')=p(G), 则称E '为G的边割集. 若{e}为边割集, 则称e为割边或桥.在上一页的图中,{e1,e2},{e1,e3,e5,e6},{e8}等是边割集,e是桥,{e7,e9,e5,e6}是边割集吗?8几点说明:K无点割集nn阶零图既无点割集,也无边割集.若G连通,E '为边割集,则p(G-E ')=2若G连通,V '为点割集,则p(G-V ')≥2有向图的连通性设有向图D=<V,E>u可达v: u到v有通路. 规定u到自身总是可达的.可达具有自反性和传递性D弱连通(连通): 基图为无向连通图D单向连通: ∀u,v∈V,u可达v或v可达uD强连通: ∀u,v∈V,u与v相互可达强连通⇒单向连通⇒弱连通定理(强连通判别法) D强连通当且仅当D中存在经过每个顶点至少一次的回路定理(单向连通判别法) D单向连通当且仅当D中存在经过每个顶点至少一次的通路有向图的短程线与距离u到v的短程线: u到v长度最短的通路 (u可达v)u与v之间的距离d<u,v>: u到v的短程线的长度若u不可达v, 规定d<u,v>=∞.性质:d<u,v>≥0, 且d<u,v>=0 ⇔u=vd<u,v>+d<v,w> ≥d<u,w>注意: 没有对称性7.3 图的矩阵表示无向图的关联矩阵定义设无向图G=<V,E>, V={v1, v2, …, v n}, E={e1, e2, …, e m},令m ij为v i 与e j的关联次数,称(m ij)n⨯m为G的关联矩阵,记为M(G).性质(1) 每一列恰好有两个1或一个2有向图的关联矩阵定义设无环有向图D=<V,E>, V={v1, v2, …, v n},E={e, e2, …, e m}, 令1性质(1) 每一列恰好有一个1和一个-1(2) 第i行1 的个数等于d+(v i), -1 的个数等于d-(v i)(3) 1的总个数等于-1的总个数, 且都等于m(4) 平行边对应的列相同有向图的邻接矩阵有向图的可达矩阵7.4 最短路径及关键路径带权图G=<V,E,w>, 其中w:E→R.∀e∈E, w(e)称作e的权. e=(v i,v j), 记w(e)=w ij . 若v i,v j不相邻, 记w ij =∞.设L是G中的一条路径, L的所有边的权之和称作L的权, 记作w(L).u和v之间的最短路径: u和v之间权最小的通路.标号法(E.W.Dijkstra, 1959)PERT图与关键路径PERT图(计划评审技术图)设有向图G=<V,E>, v∈Vv的后继元集Γ+(v)={x|x∈V∧<v,x>∈E}v的先驱元集Γ-(v)={x|x∈V∧<x,v>∈E}PERT图:满足下述条件的n阶有向带权图D=<V,E,w>,(1) D是简单图,(2) D中无回路,(3) 有一个入度为0的顶点, 称作始点; 有一个出度为0的顶点, 称作终点.通常边的权表示时间, 始点记作v1, 终点记作v n关键路径关键路径: PETR图中从始点到终点的最长路径v的最早完成时间TE(v i): 从始点v1沿最长路径到v ii所需的时间TE(v)=01TE(v)=max{TE(v j)+w ji|v j∈Γ-(v i)}, i=2,3,⋯,niv的最晚完成时间TL(v i): 在保证终点v n的最早完成i时间不增加的条件下, 从始点v1最迟到达v i的时间TL(v)=TE(v n)nTL(v)=min{TL(v j)-w ij|v j∈Γ+(v i)}, i=n-1,n-2,⋯,1iv的缓冲时间TS(v i)=TL(v i)-TE(v i), i=1,2,⋯,niv在关键路径上⇔TS(v i)=0i最晚完成时间TL(v)=128TL(v)=min{12-6}=67TL(v)=min{12-1}=116TL(v)=min{11-1}=105TL(v)=min{10-4}=64TL(v)=min{6-2,11-4,6-4}=23TL(v)=min{2-0,10-3,6-4}=22TL(v)=min{2-1,2-2,6-3}=01缓冲时间TS(v)=0-0=01TS(v)=2-1=12TS(v)=2-2=03TS(v)=6-4=24TS(v=10-8=25TS(v)=11-9=26TS(v)=6-6=07TS(v)=12-12=08关键路径: v1v3v7v8。

机械制图第七章

机械制图第七章
大小均画两条线(小间隙可夸大画出,一般小于0.7 mm)。 两相邻零件的剖面线方向应相反,或者方向一致而间隔不等。
但同一零件的剖面线在所有视图中应同方向且同间距。 对于紧固件和实心零件(如螺钉、螺栓、螺母、垫圈、键、销、
球及轴等),若剖切平面通过其基本轴线时,则这些零件均按不剖绘制; 需要时,可采用局部剖视。
直齿圆柱齿轮名称及代号计算公式名称及代号计算公式分度囿直径ddmzmz2齿根高h125m齿根囿直径dh225m中心距a标准直齿囿柱齿轮各基本尺寸计算公式25机械制图1单个齿轮的画法单个齿轮一般用两个规图来表达且在平行于齿轮轴线的投影面上的规图可以画成规图全剖规图戒半剖规图其画法如图所示
1
机械制图
第七章 标准件和常用件的 表示法
GB/T 1096 键B 16×10×100
b = 6、h = 10、D = 25的半 圆键标记为:
GB/T 1096.1 键6×10×25
b=6、L=25的钩头楔键标 记为:
GB/T 1565 键6×25
17
2. 键联结的画法及尺寸标注
1.普通平键联结的画法
当采用普通平键时,键的长度L和宽度b 要根据轴的直径d和传递的扭矩大小,通过 计算后从标准中选取适当值。轴和轮毂上键 槽的表达方法及尺寸标注如右图所示。
右图为螺栓连接比例画法的画图过程。其中,螺栓长度L可按下式 估算:
L≥t1+t2+0.15d+0.8d+(0.2~0.3)d 根据上式的估算值,应从相应的螺栓标准(参见本书附表2-1)所 规定的长度系列中,选取最接近标准长度的值作为L值。
机械制图
a
b
c
d
螺栓连接的画图步骤
14
机械制图
2.螺纹紧固件
2.螺柱连接

第7章图(Graph)

第7章图(Graph)
1 2
• 1.带方向的边叫有向边(directed edge),简 称为弧; • 用顶点的有序对表示,<vi ,vj>和<vj ,vi> 是不同的 . • 2. 而不带方向的边叫无向边(undirected edge),简称为边。 • 用顶点的无序对表示,(vi ,vj)和(vj ,vi)表 示同一条边。 • • <vi,vj >表示从顶点vi到vj 的一段弧 • Vi:称为边的始点或者弧尾 • Vj:称为边的终点或者弧头
• 2e= • 例:
1 1
TD(v )
i 1 i
n
2 2
• 2*1=1+1
2*2=2+2
• (5)路径与回路:路径上边的数目称为路径长度。 • 下图所示的无向图中,顶点v1到顶点v5的路径有两条,分别 为(v1,v2,v3,v5)与(v1,v4,v5),路径长度分别为3和2。
1 2 5 3
• 如果路径的起点和终点相同 (即vp=vq),则称此路径为回路 4 或环。序列中顶点不重复出现的路径称为简单路径, 图 7.3 图的路径 • 上图所示的v1到v5的两条路径都为简单路径。除第一顶点与 最后一个顶点之外,其它顶点不重复现的回路为简单回路 或者简单环。
第7章 图(Graph)
图是一种比树更为复杂的非线性数据结构。 1.线性表: 数据元素之间仅有线性关系. (每个elem只有一个直接前驱和一个直接后继) 2.树形结构:elem之间有明显的层次关系. (每一层上的数据元素可能和下一层中多个元素相关,但 只能和上一层中一个元素(双亲)相关) 3.图形结构:结点之间的关系可以是任意的. (图中任意两个数据元素之间都可能相关联 ) 图的应用十分广泛。最典型的应用领域有电路分析、 寻找最短路线、项目规划、鉴别化合物、统计力学、遗 传学、控制论、语言学,乃至社会科学。实际上,在所 有的数据结构中,图的应用是最广泛的。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

设G是Mgraph 类型的变量,用于存储无向图,该图有n个顶 点,e条边。 G的图示如下:
G.vexs
G.arcs
V1
顶点数组
0
存储邻接矩阵 的二维数组
G.vexnum G.arcnu G.kind
n e AG
无向图数组表示法特点: 1)无向图邻接矩阵是对称矩阵,同一条边表示了两次; 2)顶点v的度:等于二维数组对应行(或列)中1的个数; 3)判断两顶点v、u是否为邻接点:只需判二维数组对应分量是 否为1; 4)顶点不变,在图中增加、删除边:只需对二维数组对应分量 赋值1或清0; 5)设存储顶点的一维数组大小为m(m图的顶点数n), G占用存储 空间:m+m2;G占用存储空间只与它的顶点数有关,与边数无关; 适用于边稠密的图; 对有向图的数组表示法可做类似的讨论
数组表示法是图的一种顺序存储结构 在数组表示法中,用邻接矩阵表示顶点间的关系 邻接矩阵:G的邻接矩阵是满足如下条件的n阶矩阵: A[i][j]= 1 0 V1 V3 V4 V5 V2 0 1 0 1 0 若(vi,vj)E 或 <vi,vj>E 否则 1 0 1 0 1 0 1 0 1 1 1 0 1 0 0 0 1 1 0 0 V1 V2 0 0 0 1 1 0 0 0 1 0 0 0 0 0 1 0
e1
V2
V3 V5
V2
V4
3
路径、回路 无向图中的顶点序列v1,v2,… ,vk,若(vi,vi+1)E( i=1,2,…k-1), v =v1, u =vk, 则称该序列是从顶点v到顶 点u的路径;若v=u,则称该序列为回路。 有向图D=(V,E)中的顶点序列v1,v2,… ,vk, 若 <vi,vi+1>E ( i=1,2,…k-1), v =v1, u =vk, 则称该序列 是从顶点v到顶点u的路径;若v=u,则称该序列为回路; 例在图1中,V1,V2,V3,V4 是V1到V4的路径; V1,V2,V3,V4,V1是回路;在图2中,V1,V3,V4 是V1到V4的路 径; V1,V3,V4,V1是回路; V1 V3 V4
G1图示
V2
V5
例 G2=<V2,E2> V2={v1,v2,v3,v4 } E2={<v1,v2>, <v1,v3>, <v3,v4> , <v4,v1>}
有序对<vi,vj> : 用以为vi起点、以vj为终点 的有向线段表示,称为有向 边或弧;
V1
V2
V3 G2图示
V4
无向图:在图G中,若边是无向边,则称G为无向图; 有向图:在图G中,若边是有向边,则称G为有向图;
第七章 图
7.1 7.2 图的定义和术语 图的存储结构 7.4 图的连通性 7.4 .1 无向图的连通分量和生成树
7.2 .1 数组表示法
7.2 .2 邻接表 7.2 .3 十字链表 7.5
7.4 .2 最小生成树
有向无环图及其应用 7.5 .1 拓扑排序
7.2 .4 邻接多重表
7.3 图的遍历 7.3 .1 广度优先遍历 7.6
V3
V4数组表示法 顶点的存储:用 Nhomakorabea维数组存储(按编号顺序) 顶点间关系:用二维数组存储图的邻接矩阵; 0 1 2 3 4 5 V1 V2 V3 V4 V5 存储顶点的 一维数组
0 1 2 3 4
m m+1 m+2 m+3 m+4
0 1 0 1 0
1 0 1 0 1
存储邻接矩阵的 二维数组 m-1
顶点的编号:为了使图的存储结构与图一一对应,在讨论图的存储结 构时,首先要给图的所有顶点编号。 我们主要介绍图的两种存储结构 数组表示法 邻接表(邻接表,逆邻接表) 设 G=<V, E>是图, V={v1,v2,v3, … vn },设顶点的角标为它的编号
如何表示顶点间的关系?
7.2.1
数组表示法
例: 图2、图3 是 图1 的子图
V1
V3 V5
图1 图2
V1 V3 V4
V2
V2
V1 V3
V2
V5
V4
图3
V5
6
连通分图(强连通分量) 无向图G的极大连通子图称为G的连通分量 极大连通子图意思是:该子图是G连通子图,将G的任何不在该子图 中的顶点加入,子图不再连通; 有向图D的极大强连通子图称为D的强连通分量 极大强连通子图意思是:该子图是D强连通子图,将D的任何不在该 子图中的顶点加入,子图不再是强连通的;
7.2.2 邻接表 邻接表是图的链式存储结构 1 无向图的邻接表 顶点:通常按编号顺序将顶点数据存储在一维数组中; 关联同一顶点的边:用线性链表存储
该结点表示边 (V1 V2),其 中的1是V2在一 维数组中的位置

V1 V2
V3 V4
V5
0 1 2 3 4
m-1
V1 V2 V3 V4 V5
1 0 1
连通分图 V1 V2 V5
V4
V3
V6
7
生成树 * 一个连通图的生成树是一个极小连通子图,它含有图中 全部顶点,但只有足以构成一棵树的n-1条边。在一棵生成树 上任添一条边,就构成回路。 * 一棵有n个顶点的生成树有且仅有n-1条边。 * 如果一个图有n个顶点,而边数小于n-1,则图不连通,多 于n-1条边,一定有环。 * 如果一个图中恰有一个顶点入度为0,其余入度均为1, 则图是一棵有向树。
三 图的基本操作 1 CreateGraph(&G, V, VR); 初始条件:V是图的顶点集,VR是图中弧的集合 操作结果:按V和VR的定义构造图G 2 DestroyGraph(&G); 初始条件:图G存在 操作结果:销毁图G 3 LocateVex(G,u); 初始条件:图G存在,u和G中顶点有相同特征 操作结果:若G中存在顶点u,则返回该顶点在图中位置;否则返回其它信息。 4 GetVex(G, v); 初始条件:图G存在,v是G中某个顶点 操作结果:返回v的值 5 PutVex(&G, v, value); 初始条件:图G存在,v是G中某个顶点 操作结果:对v赋值value
图1
V2
V1
V2
V5
V3
图2
V4
4 连通图、(强连通图)
在无(有)向图G=< V, E >中,若对任何两个顶点v、u都 存在从v到u的路径,则称G是连通图(强连通图)
V1 V3 V4
连通图
V2
V1
V2
V5
V5
V4
V3
非连通图
V6
5 子图
设有两个图G=(V,E)、G1=(V1,E1),若V1 V,E1 E, E1关联的顶点都在V1中,则称 G1是G的子图;
0
3
2 3 4 4
1
2 2
图的邻接表类型定义 #define MAX_VERTEX_NUM 20 typedef struct ArcNode{ //边(弧)结点的类型定义 int adjvex; //边(弧)的另一顶点的在数组中的位置 struct ArcNode *nextarc; //指向下一条边(弧)结点的指针 }ArcNode; typedef struct Vnode { //顶点结点和数组的类型定义 VertexType data; //顶点信息 ArcNode * finrstarc; //指向关联该顶点的边(弧)链表 }Vnode, AdjList[MAX_VERTEX_NUM]; typedef struct { AdjList vertices; int vexnum, arcnum; //图的当前顶点数和弧数 int kind; //图的种类标志 }ALGraph;
10 InsertArc(&G, v, w); 初始条件:图G存在,v和w是G中两个顶点。 操作结果:在G中增添弧<v,w>,若G是无向的,则还增添对称弧<w,v> 11 DeleteArc(&G, v, w); 初始条件:图G存在,v和w是G中两个顶点。 操作结果:在G中删除弧<v,w>,若G是无向的,则还删除对称弧<w,v> 12 DFSTraverse(G, v, Visit( )); 初始条件:图G存在,v是G中某个顶点,Visit是顶点的应用函数。 操作结果:从顶点v起深度优先遍历图G,对每个顶点调用函数Visit一次且 仅一次。一旦visit( )失败,则操作失败 13 BFSTraverse(G, v, Visit( )); 初始条件:图G存在,v是G中某个顶点,Visit是顶点的应用函数。 操作结果:从顶点v起广度优先遍历图G,对每个顶点调用函数Visit一次且 一次。一旦visit( )失败,则操作失败
第七 章

本章介绍另一种非线性数据结构 —— 图 图:是一种多对多的结构关系,每个元素可以有 零个或多个直接前趋;零个或多个直接后继;
学习要点 1.熟悉图的各种存储结构及其构造算法,了解实际 问题的求解效率与采用何种存储结构和算法的密切联 系; 2.熟练掌握图的两种遍历,深度优先遍历和广度优 先遍历。在学习中应注意图的遍历算法与树的遍历算 法之间的类似和差异。树的先根遍历是一种深度优先 搜索策略,树的层次遍历是一种广度优先搜索策略。
6 FirstAdjVex(G, v); 初始条件:图G存在,v是G中某个顶点 操作结果:返回v的第一个邻接顶点。若顶点在G中没有邻接顶点,则返回“空” 。 7 NextAdjVex(G, v, w); 初始条件:图G存在,v是G中某个顶点,w是v的邻接顶点。 操作结果:返回v的(相对于w的)下一个邻接顶点。若w是v的最后一个邻接点, 则返回“空”。 8 InsertVex(&G, v); 初始条件:图G存在,v和图中顶点有相同特征。 操作结果:在图G中增添新顶点v 9 DeleteVex(&G, v); 初始条件:图G存在,v和图中顶点有相同特征 操作结果:删除G中顶点v及相关的弧
相关文档
最新文档