挑战程序设计竞赛(算法和数据结构)——12.1图的基本概念
Posted 小乖乖的臭坏坏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了挑战程序设计竞赛(算法和数据结构)——12.1图的基本概念相关的知识,希望对你有一定的参考价值。
图的表述和术语
- 顶点集合位V,边集合为E的图记作 G = ( V , E ) G=(V,E) G=(V,E)。另外, G = ( V , E ) G=(V,E) G=(V,E)的顶点和- 边数分别为 ∣ V ∣ \\mid V\\mid ∣V∣和 ∣ E ∣ \\mid E\\mid ∣E∣。
- 链接两个顶点 u u u, v v v的边记作 e = ( u , v ) e=(u,v) e=(u,v)。再无向图中, ( u , v ) (u,v) (u,v)和 ( v , u ) (v,u) (v,u)代表同一条边。再加权图中,边 ( u , v ) (u,v) (u,v)的权记作 w ( u , v ) w(u,v) w(u,v)。
- 起点和终点相同的路径称为环。
- 不存在环的有向图称为Directed Acyclic Graph(DAG)。
- 与顶点 u u u相连的边数称为顶点 u u u的度。在有向图中,以顶点 u u u为终点的边数称为顶点 u u u的入度,以顶点 u u u为起点的边数称为顶点 u u u的出度。
- 如果对图 G = ( V , E ) G=(V,E) G=(V,E)而言,任一两个顶点 u 、 v u、v u、v都存在从 u u u到 v v v的路径,那么 G G G称为连通图。
- 对于两个图 G G G和 G ′ G' G′,如果 G ′ G' G′的顶点集合与边集合皆为 G G G的顶点集合与边集合的子集,那么 G ′ G' G′就称为 G G G的子图。
图的基本算法
- 深度优先搜索以”能走多远就走多远“为基本规则,是图最自然也是最基本的搜索算法。
- 广度优先搜索先尽可能的搜索与已搜索顶点相邻的为搜索顶点,然后以此类推不断扩大搜索范围。我们常将广度优先搜索用作求最短路径的一个算法。
以上是关于挑战程序设计竞赛(算法和数据结构)——12.1图的基本概念的主要内容,如果未能解决你的问题,请参考以下文章
挑战程序设计竞赛(算法和数据结构)——13.1基于加权图的两类问题的描述
挑战程序设计竞赛(算法和数据结构)——12.4广度优先搜索的JAVA实现
挑战程序设计竞赛(算法和数据结构)——15.5最小生成树(Kruskal算法)的JAVA实现
挑战程序设计竞赛(算法和数据结构)——分割(下)&快速排序的JAVA实现