资源描述:
《秦朝宦官赵高传》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第七章图17.1抽象数据类型图的定义7.2图的存储表示7.3图的遍历7.4最小生成树7.5重(双)连通图和关节点7.6两点之间的最短路径问题7.7拓扑排序7.8关键路径2网、子图完全图、稀疏图、稠密图邻接点、度、入度、出度路径、路径长度、简单路径、简单回路连通图、连通分量、强连通图、强连通分量生成树、生成森林名词和术语3图是由一个顶点集V和一个弧集R构成的数据结构。Graph=(V,R)其中,VR={
2、v,w∈V且P(v,w)}表示从v到w的一条弧,并称v为弧头,w为弧尾。谓词P(v,w)定义了弧的意义或信息。图的结构定义:7.1图的基本术语4由
3、于“弧”是有方向的,因此称由顶点集和弧集构成的图为有向图。ABECD例如:G1=(V1,VR1)其中V1={A,B,C,D,E}VR1={,,,,,,}5若VR必有VR,则称(v,w)为顶点v和顶点w之间存在一条边。BCADFE由顶点集和边集构成的图称作无向图。例如:G2=(V2,VR2)V2={A,B,C,D,E,F}VR2={(A,B),(A,E),(B,E),(C,D),(D,F),(B,F),(C,F)}6其中:V是G的顶点集合,是有穷非空集;E是G的边集合,是有穷集。问:当
4、E(G)为空时,图G存在否?答:还存在!但此时图G只有顶点而没有边。有向图:无向图:完全图:图G中的每条边都是有方向的;图G中的每条边都是无方向的;图G任意两个顶点都有一条边相连接;若n个顶点的无向图有n(n-1)/2条边,称为无向完全图若n个顶点的有向图有n(n-1)条边,称为有向完全图V=vertexE=edge图:记为G=(V,E)?v1v2v3v5v4v4v1v2v3v4问题:7例:判断下列4种图形各属什么类型?无向无向图(树)有向图有向n(n-1)/2条边n(n-1)条边G1的顶点集合为V(G1)={0,1,2,3}边集合为E(G1)={(0,1),(0,2),(0
5、,3),(1,2),(1,3),(2,3)}完全图完全图8证明:证明:若是完全有向图,则n个顶点中的每个顶点都有一条弧指向其它n-1个顶点,因此总边数=n(n-1)证明:从①可以直接推论出无向完全图的边数——因为无方向,两弧合并为一边,所以边数减半,总边数为n(n-1)/2。②完全无向图有n(n-1)/2条边。①完全有向图有n(n-1)条边。123412349稀疏图:稠密图:设有两个图G=(V,E)和G’=(V’,E’)。若V’V且E’E,则称图G’是图G的子图。子图:边较少的图。通常边数远少于nlogn边很多的图。无向图中,边数接近n(n-1)/2有向图中,边数接近n
6、(n-1)10带权图:即边上带权的图。其中权是指每条边可以标上具有某种含义的数值(即与边相关的数)。连通图:在无向图中,若从顶点v1到顶点v2有路径,则称顶点v1与v2是连通的。如果图中任意一对顶点都是连通的,则称此图是连通图。非连通图的极大连通子图叫做连通分量。→带权图在有向图中,若对于每一对顶点vi和vj,都存在一条从vi到vj和从vj到vi的路径,则称此图是强连通图。强连通图:网络:DEABCFJLMGHIK非强连通图的极大强连通子图叫做强连通分量。11生成树:是一个极小连通子图,它含有图中全部n个顶点,但只有n-1条边。若干棵生成树的集合,含全部顶点,但构成这些树的边
7、或弧是最少的。有两类图形不在本章讨论之列:v1v2v3v4如果在生成树上添加1条边,必定构成一个环。若图中有n个顶点,却少于n-1条边,必为非连通图。生成森林:图的基本术语(续)12邻接点:有向边(u,v)称为弧,边的始点u叫弧尾,终点v叫弧头。顶点v的入度是以v为终点的有向边的条数,记作ID(v);顶点v的出度是以v为始点的有向边的条数,记作OD(v)。若(u,v)是E(G)中的一条边,则称u与v互为邻接顶点。弧头和弧尾:入度和出度:问:当有向图中仅1个顶点的入度为0,其余顶点的入度均为1,此时是何形状?uv度:顶点v的度是与它相关联的边的条数。记作TD(v)。在有向图中,
8、顶点的度等于该顶点的入度与出度之和。U的入度=?U的出度=?答:是树!而且是一棵有向树!13简单路径:路径上各顶点v1,v2,...,vm均不互相重复。回路:若路径上第一个顶点v1与最后一个顶点vm重合,则称这样的路径为回路或环。路径:在图G=(V,E)中,若从顶点vi出发,沿一些边经过一些顶点vp1,vp2,…,vpm,到达顶点vj。则称顶点序列(vivp1vp2...vpmvj)为从顶点vi到顶点vj的路径。它经过的边(vi,vp1)、(vp1,vp2)、...、(vpm,vj)应当是属于E的边。路