图论及其应用讲义ppt6
- 格式:ppt
- 大小:1.30 MB
- 文档页数:26
图论及其应用简介图论是计算机科学中的一个重要分支,研究的对象是由边与顶点组成的图形结构以及与其相关的问题和算法。
图论的应用广泛,涵盖了计算机科学、网络科学、物理学、社会学、生物学等多个领域。
本文将介绍图论的基本概念、常用算法以及一些实际的应用案例。
图的基本概念图由顶点(Vertex)和边(Edge)组成,记作G=(V, E),其中V为顶点的集合,E为边的集合。
图可以分为有向图和无向图两种类型。
有向图有向图中的边具有方向性,即从一个顶点到另一个顶点的边有明确的起点和终点。
有向图可以表示一种有序的关系,比如A到B有一条边,但B到A可能没有边。
有向图的表示可以用邻接矩阵或邻接表来表示。
无向图无向图中的边没有方向性,任意两个顶点之间都有相互连接的边。
无向图可以表示一种无序的关系,比如A与B有一条边,那么B与A之间也有一条边。
无向图的表示通常使用邻接矩阵或邻接表。
常用图论算法图论中有许多经典的算法,其中一些常用的算法包括:深度优先搜索(DFS)深度优先搜索是一种用于遍历或搜索图的算法。
通过从起始顶点开始,沿着一条路径尽可能深入图中的顶点,直到无法再继续前进时,返回上一个顶点并尝试下一条路径的方式。
DFS可以用于判断图是否连通,寻找路径以及检测环等。
广度优先搜索(BFS)广度优先搜索也是一种用于遍历或搜索图的算法。
不同于深度优先搜索,广度优先搜索逐层遍历顶点,先访问离起始顶点最近的顶点,然后依次访问与起始顶点距离为2的顶点,以此类推。
BFS可以用于寻找最短路径、搜索最近的节点等。
最短路径算法最短路径算法用于计算图中两个顶点之间的最短路径。
其中最著名的算法是迪杰斯特拉算法(Dijkstra’s A lgorithm)和弗洛伊德算法(Floyd’s Algorithm)。
迪杰斯特拉算法适用于没有负权边的图,而弗洛伊德算法可以处理带有负权边的图。
最小生成树算法最小生成树算法用于找到一个连通图的最小的生成树。
其中最常用的算法是普里姆算法(Prim’s Algorithm)和克鲁斯卡尔算法(Kruskal’s Algorithm)。
图和子图 图和简单图图 G = (V, E)V ---顶点集,ν---顶点数12ε E ---边集, ε---边数例。
左图中, V={a, b,......,f}, E={p,q, ae, af,......,ce, cf} 注意, 左图仅仅是图G 的几何实现(代表), 它们有无穷多个。
真正的 图G 是上面所给出式子,它与顶点的位置、边的形状等无关。
不过今后对两者将经常不加以区别。
称 边 ad 与顶点 a (及d) 相关联。
也称 顶点 b(及 f) 与边 bf 相关联。
称顶点a 与e 相邻。
称有公共端点的一些边彼此相邻,例如p 与af 。
环(loop ,selfloop ):如边 l 。
棱(link ):如边ae 。
重边:如边p 及边q 。
简单图:(simple graph )无环,无重边 平凡图:仅有一个顶点的图(可有多条环)。
一条边的端点:它的两个顶点。
记号:νε()(),()().G V G G E G ==。
习题1.1.1 若G 为简单图,则εν≤⎛⎝ ⎫⎭⎪2 。
1.1.2 n ( ≥ 4 )个人中,若每4人中一定有一人认识其他3人,则一定有一 人认识其他n-1人。
同构在下图中, 图G 恒等于图H , 记为 G = H ⇔ VG)=V(H), E(G)=E(H)。
图G 同构于图F ⇔ V(G)与V(F), E(G)与E(F)之间 各 存在一一对应关系,且这二对应关系保持关联关系。
记为 G ≅F。
注 往往将同构慨念引伸到非标号图中,以表达两个图在结构上是否相同。
de f G = (V , E )yz w cG =(V , E )w cyz H =(V ’, E ’)’a ’c ’y ’e ’z ’F =(V ’’, E ’’)注 判定两个图是否同构是NP-hard 问题。
完全图(complete graph) Kn空图(empty g.) ⇔ E = ∅ 。
V’ ( ⊆ V) 为独立集 ⇔ V’中任二顶点都互不相邻。