根据图的定义可知,图的 逻辑结构 分为两部分:V和E的集合。因此,用一个一维 数组 存放图中所有顶点数据;用一个二维数组存放顶点间关系(边或弧)的数据,称这个二维数组为邻接 矩阵 。邻接矩阵又分为有向图邻接矩阵和 无向图 邻接矩阵。
在图的邻接 矩阵 表示法中:
① 用邻接 矩阵表示顶点间的相邻关系
② 用一个顺序表来存储顶点信息
图的矩阵
设G=(V,E)是具有n个顶点的图,则G的邻接矩阵是具有如下性质的n阶方阵:
【例】
下图中 无向图G 5 和 有向图G 6 的邻接 矩阵分别为A1 和A 2 。
网络矩阵
若G是网络,则邻接 矩阵 可定义为:

其中:

w ij 表示边上的权值;
∞表示一个计算机允许的、大于所有边上权值的数。
【例】下面带权图的两种邻接 矩阵分别为A 3 和A 4 。
图的邻接 矩阵 存储结构形式说明
#define MaxVertexNum l00 //最大顶点数,应由用户定义
typedef char VertexType; //顶点类型应由用户定义
typedef int EdgeType; //边上的权值类型应由用户定义
typedef struct{VextexType vexs[MaxVertexNum]  //顶点表EdeType edges[MaxVertexNum][MaxVertexNum]; //邻接矩阵,可看作边表int n,e; //图中当前的顶点数和边数} MGragh;

注意:
① 在简单应用中,可直接用二维 数组作为图的邻接 矩阵(顶点表及顶点数等均可省略)。
② 当邻接矩阵中的元素仅表示相应的边是否存在时,EdgeTyPe可定义为值为0和1的 枚举类型。
否则,就可以存放别的信息比如边的权重信息。
③ 无向图的邻接矩阵是 对称矩阵,对规模特大的邻接矩阵可压缩存储。
④邻接矩阵表示法的空间复杂度S(n)=0(n 2 )。
⑤建立无向网络的算法。

邻接矩阵的定义和例子相关推荐

  1. UA MATH565C 随机微分方程I SDE的定义与例子

    UA MATH565C 随机微分方程I SDE的定义与例子 随机微分方程的定义 白噪声过程 SDE的一般形式 例子:Ornstein-Uhlenbeck过程 随机微分方程的定义 经典力学中描述一个确定 ...

  2. 规范化:范式(主属性,非主属性,1NF,2NF,3NF,BCNF:定义,例子等)

    主属性:         在一个关系中,如果一个属性是构成某一个候选关键字的属性集中的一个属性,则称它为主属性. 非主属性: 不包含在任何一个候选码中的属性称为非主属性. 非主属性是相对与主属性来定义 ...

  3. 【个人学习笔记】泛函分析-度量空间(一)——定义与例子

    文章目录 前言 1.1 度量空间的定义 1.2 Ho¨lderH\ddot olderHo¨lder不等式 总结 前言 好久没有写什么东西了,之前准备写机器学习,但是实在是太长了,望而却步.泛函分析是 ...

  4. Android Toast自己定义Toast例子

    通过自己定义一个layout布局文件,然后在Toast里面设置这个layout为布局view,最后以Toast的方式呈现. 1.toast.xml文件: <?xml version=" ...

  5. 抽象代数——群的基本定义和一些例子

    群论的基本概念点较多,且各概念点之间关系纵横交错,学习起来颇有本科时初学线性代数时的感觉,觉得有必要整理一下,先梳理一下群的基本定义和例子. 首先作几点说明: 1.群(group).环(ring).域 ...

  6. Java数据结构——邻接矩阵+邻接表

    文章目录 一.邻接矩阵 二.邻接表 一.邻接矩阵 1. 定义 vexs[](存储顶点)和 arcs[][](存储边关系,叫邻接矩阵)集合.因此,用一个一维数组存放图中所有顶点数据: 用一个二维数组存放 ...

  7. 图论——邻接矩阵之无向网

    在此之前,我们需要先理清图和网的区别 1.图G:有两个集合,边集V和点集E[点集用来存放各个顶点,边集用来存放各条边来表示关联两点的联系] 2.权值:即即两顶点之间互相往来需要花费的代价或消耗 3.网 ...

  8. 掌握Tiles框架 (二)-- Tiles布局和定义

    1. Tile 布局 构建第一个 tile 布局 如果站点能够重用相同的布局(使用 HTML 表格来实现)和图像,而不必重复相同的 HTML 代码,这样不是很好吗? Tile 在为站点创建共同的外观方 ...

  9. kbengine定义实体

    定义实体 什么时候需要定义实体: 需要进行数据存储. 能够方便的远程访问. 需要引擎管理和监控, 例如: AOI.Trap.等等. 当灾难发生后服务端可以自动进行灾难的恢复. 什么时候需要定义实体的属 ...

最新文章

  1. CF1131E String Multiplication(???)
  2. java操作ad域 免证书
  3. android 只输入数字与小数点_Android金额输入框只允许输入小数点后两位效果
  4. H.265(HEVC)深度解析
  5. 1.16 快速排序法(Quicksort)
  6. Mac本地生成SSHKey的方法
  7. Wordpress的theme存储位置
  8. 电子病历模板_年会献礼3:浮针专家平台病历撰写系统年会启动
  9. Facebook 发布全新 JavaScript 引擎:Hermes! | CSDN博文精选
  10. 里bl2和bl3为什么分开_真正爱过的人,分开,真的会是“好散”吗?
  11. ant执行命令的详细参数和Ant自带的系统属性
  12. python转义字符表
  13. 74HC595串口转并口芯片学习
  14. VBA代码自动缩进排版-VBA代码助手一键排版功能
  15. beyond compare 注册表删除
  16. HDU1166 敌兵布阵【线段树】题解
  17. GC算法精解(五分钟让你彻底明白标记/清除算法)
  18. 【保姆级教程】STK3332系列环境光传感器整理!STK333X
  19. ubuntu18.04 使用scp命令
  20. Unity 接入百度AI - 红酒识别

热门文章

  1. Django项目中浏览器显示127.0.0.1拒绝我们的连接请求
  2. 我的2018年计划-抓重点,出成绩,提高核心竞争力
  3. [PHP] 算法-请找出带环链表的环的入口结点的PHP实现
  4. 【Java编程学习】案例3-4:学生投票系统
  5. karma+phantomjs+mocha+chai使用心得
  6. Leetcode 45. 跳跃游戏 II
  7. Java 基础语法知识 - 万丈高楼平地起
  8. REST/RESTFUL详解-转载
  9. css入门之CSS1、CSS2、CSS3、CSS4发展历程
  10. HDU2188——悼念512汶川大地震遇难同胞——选拔志愿者(Bash Game巴士博弈)(我去,名字肿么这么长)