
图数据结构:顶点结点和图的定义
下载需积分: 0 | 1.67MB |
更新于2024-08-23
| 73 浏览量 | 举报
收藏
顶点结点-数据结构图
在数据结构中,图是一种复杂的数据结构,它们之间的关系是任意的。图中任意两点之间都可能相关。在本节中,我们将讨论图的定义、术语和基本概念。
图的定义
图(Graph)是由两个集合V(G)和E(G)组成的,记为G=(V,E),其中:
* V(G)是顶点的非空有限集
* E(G)是边的有限集合,边是顶点的无序对或有序对
有向图
有向图G是由两个集合V(G)和E(G)组成的,其中:
* V(G)是顶点的非空有限集
* E(G)是有向边(也称弧)的有限集合,弧是顶点的有序对,记为<v,w>,v,w是顶点,v为弧尾,w为弧头
无向图
无向图G是由两个集合V(G)和E(G)组成的,其中:
* V(G)是顶点的非空有限集
* E(G)是边的有限集合,边是顶点的无序对,记为(v,w)或(w,v),并且(v,w)=(w,v)
顶点和弧
顶点:图中的数据元素通常称作顶点。
弧:若<v,w>∈r,则<v,w>表示从v到w有一条弧。且称v为弧尾(tail或initial node),w为弧头(head或terminal node),此时的图称为有向图。
无向图:若<v,w>∈r必有<w,v>∈r,即r是对称的,表示v到w有一条边,此时图为无向图。
图的抽象数据类型
Adt Graph={
数据对象v:v是具有相同特性的数据元素的集合,成为顶点集。
数据关系r:
R={vr}vr={<v,w>|v,w∈V(G)且p(v,w)表示从v到w的弧,谓词p(v,w)定义了弧<v,w>的意义或信息。}
操作p:
略
图的存储结构
在计算机中,图可以用邻接矩阵或邻接表来存储。邻接矩阵是一种二维数组,数组的每个元素表示两个顶点之间是否存在边。邻接表是一种链表,每个链表节点对应一个顶点,链表中的每个元素表示与该顶点相连的所有顶点。
顶点结点的数据结构
typedef struct dnode
{
int data; //存与顶点有关信息
struct arcnode *firstin; //指向以该顶点为弧头的第一个弧结点
struct arcnode *firstout; //指向以该顶点为弧尾的第一个弧结点
}DD;
DD g[M]; //g[0]不用
data firstin firstout
在上面的代码中,我们定义了一个顶点结点的数据结构,包括数据字段data、指向以该顶点为弧头的第一个弧结点的指针firstin和指向以该顶点为弧尾的第一个弧结点的指针firstout。
图的应用
图是一种重要的数据结构,它广泛应用于计算机科学和其他领域,如社交网络、交通网络、计算机网络等。图的应用包括:
* 社交网络分析
* 交通网络优化
* 计算机网络拓扑结构
* 数据挖掘
图是一种复杂的数据结构,它们之间的关系是任意的。图的定义、术语和基本概念是理解图的基础,而图的存储结构和应用是图的重要方面。
相关推荐










杜浩明
- 粉丝: 18
最新资源
- 简易画线程序实现及细节解析
- 基于JSP技术的BBS讨论区开发教程
- 仓储管理系统源码解析及进阶学习指南
- 新手入门:SQL Server 2005基础教程详解
- 华为编程语法规范详解
- VC++实现的完整FTP程序源代码解析
- 使用C语言和OpenGL实现的3D喷泉效果教程
- j2me实现TXT文件读取的算法、代码与演示程序
- 简易模拟斗地主程序实现大牌功能
- Oracle+JSP实现网上书店系统开发教程
- 使用C语言编写的openGL图形碰撞程序开发
- VC/MFC数据库解析工具:轻松获取表字段信息
- JFreeChart 1.0.11 官方文档解析
- 个人理财管理系统的需求分析与用例图设计
- 《ASP.NET完全入门教程》PDF版
- Windows API浏览器工具:查询与使用
- Excel实现的C4.5决策树算法详解
- BIOS新手入门指南:解密BIOS操作的神秘面纱
- 《XML初学者指南:从入门到进阶的风趣旅程》
- 北邮通信原理第三章随机过程习题详细解析
- JAVA实现的IDS加密技术解析与工具应用
- ASP网站模板开发教程
- 虚拟风向仪表VC源码实现及其网络类应用
- MINIX 3.1源码深度解析与操作系统设计