图的定义与术语解析:顶点、边与有向无向图

需积分: 0 0 下载量 2 浏览量 更新于2024-08-23 收藏 1.67MB PPT 举报
"数据结构中的图是由顶点和边构成的数据结构,分为有向图和无向图。顶点用结点表示,包含与顶点相关的数据和指向第一条依附于该顶点的边的指针。" 在数据结构中,图是一种非常重要的非线性数据结构,它比线性表和树更复杂,因为它的元素之间可以有任意的关联关系,而不是单一的前后或者层次关系。图由顶点(Vertex)和边(Edge)组成,可以用来表示各种实体之间的复杂关系。 在图的定义中,数据对象v是具有相同特性的一组数据元素,称为顶点集;数据关系r定义了顶点间的关系,通常通过边或弧来体现。例如,在有向图中,边是以顶点的有序对形式存在,表示从一个顶点(弧尾)到另一个顶点(弧头)的方向;而在无向图中,边是顶点的无序对,没有方向性。 在具体实现中,每个顶点可以用一个结构体(如DD类型)来表示,其中包含两个字段:`data`用于存储与顶点相关的任何信息,`firstedge`是一个指针,指向第一条依附于该顶点的边的结点。在示例代码中,`DD ga[M]`定义了一个数组,用来存储图中的顶点,其中`ga[0]`未被使用,可能是为了保留或特殊用途。 图的类型主要有两种:有向图和无向图。有向图的边是有方向的,如 `<v, w>` 表示从顶点v到顶点w的一条弧;无向图的边没有方向,如 `(v, w)` 表示顶点v和w之间的一条边,无向边在图中表现为对称关系,即 `(v, w)` 等同于 `(w, v)`。 图的其他相关术语包括: - 有向完全图:如果有n个顶点,那么有n(n-1)条边,每一对不同的顶点之间都有一个有向边。 - 完全图:无论有向还是无向,图中任意两个顶点之间都有一条边相连。 - 无向完全图:与有向完全图类似,但所有边都是无方向的。 图在很多领域有广泛的应用,比如计算机网络中的路由器连接、社交网络中的朋友关系、交通网络中的道路连接等。图的各种操作,如遍历(深度优先搜索、广度优先搜索)、最短路径算法(Dijkstra、Floyd-Warshall)等,都是数据结构和算法学习中的重要内容。