邻接矩阵(Adjacency Matrix)是表示顶点之间相邻关系的矩阵。设G=(V,E)是一个图,其中V={v1,v2,…,vn} [1]  。G的邻接矩阵是一个具有下列性质的n阶方阵:

(1)对无向图而言,邻接矩阵一定是对称的,而且主对角线一定为零(在此仅讨论无向简单图),副对角线不一定为0,有向图则不一定如此。

(2)在无向图中,任一顶点i的度为第i列(或第i行)所有非零元素的个数,在有向图中顶点i的出度为第i行所有非零元素的个数,而入度为第i列所有非零元素的个数。

(3)用邻接矩阵法表示图共需要n^2个空间,由于无向图的邻接矩阵一定具有对称关系,所以扣除对角线为零外,仅需要存储上三角形或下三角形的数据即可,因此仅需要n(n-1)/2个空间。

例如:

下图中无向图G 5 和有向图G 6 的邻接矩阵分别为A1 和A 2 :

例如:

下面带权图的两种邻接矩阵分别为A 3 和A 4 。

邻接矩阵的理解与应用相关推荐

  1. 图、邻接矩阵、广度与深度优先、生成树

    最近突然被问到这个问题,于是复习一下,用最通俗的语言解释. 图 无向图:如下左图各个顶点之间用不带箭头的边连接的图:相应的右图就是有向图                 邻接矩阵 可以理解为表示上述图 ...

  2. Hopcroft-Carp(有点难)

    吐槽: 本想把这个算法收藏在板子库里面,但学算法还是要理解的!!!理解起来真的不容易,这个算法的变量实在是太多了,看了一天多的博客,用了六七张草稿纸去模拟代码的过程,直到现在我其实还没有完全理解,但还 ...

  3. 云中「秘密」:构建非交互式零知识证明---探索零知识证明系列(五)

    本文作者:郭宇 Once exposed, a secret loses all its power. 一旦泄露,秘密就失去了全部威力 ― Ann Aguirre 这已经是本系列的第五篇文章了,这一篇 ...

  4. 数据结构与算法(7-1)图的存储(邻接矩阵、邻接表)

    目录 一.图的邻接矩阵 存储结构 总代码 二.网图的邻接矩阵 存储结构 总代码 三.图的邻接表 存储结构 1.顶点列表结构体 2.邻接顶点结构体 总代码 四.网图的邻接表 存储结构 1.顶点列表结构体 ...

  5. 【算法】【ACM】深入理解Dijkstra算法(单源最短路径算法)

    Dijkstra算法是用来求解从某个源点到其他各顶点的最短路径(单源最短路径). 下面的Dijkstra算法的讲解都是基于这个有向图,在遇到其他问题可以类比. 算法的基本思想: 把图中的定点分成两组, ...

  6. 【网络流】学习笔记:一次理解网络流!

    一.从概念入手 网络流用于解决流量问题 网络流:所有弧上流量的集合f={f(u,v)},称为该容量网络的一个网络流. 定义:带权的有向图G=(V,E),满足以下条件,则称为网络流图(flow netw ...

  7. 一步一步深入理解Dijkstra算法

    先简单介绍一下最短路径: 最短路径是啥?就是一个带边值的图中从某一个顶点到另外一个顶点的最短路径. 官方定义:对于内网图而言,最短路径是指两顶点之间经过的边上权值之和最小的路径. 并且我们称路径上的第 ...

  8. ACM模板--邻接矩阵 无向图 Prim Kruskal Dijkstra

    /*** C++: Dijkstra算法获取最短路径(邻接矩阵)** @author skywang* @date 2014/04/24*/#include <iomanip> #incl ...

  9. 图的理解:深度优先和广度优先遍历及其 Java 实现

    遍历 图的遍历,所谓遍历,即是对结点的访问.一个图有那么多个结点,如何遍历这些结点,需要特定策略,一般有两种访问策略: 深度优先遍历 广度优先遍历 深度优先 深度优先遍历,从初始访问结点出发,我们知道 ...

最新文章

  1. Linus:Linux太烂,我要删了它,你们用Windows XP吧!
  2. Android热修复原理,已整理成文档
  3. SpringCloud(第二部分)
  4. 爱奇艺体验Serverless极致扩缩容,资源利用率提升40%
  5. 使用rmi实现ehcache集群模式
  6. 非线性回归模型(part3)--K近邻
  7. QT中父子窗口事件传递与事件过滤器
  8. powershell some check
  9. html检测用户在线离线,HTML5 --- navigator.onLine 离线检测(示例代码)
  10. 使用这6个技巧来物理保护 MacBook
  11. aspen吸收塔气液比优化_Aspen软件在天然气净化过程中的模拟与优化
  12. 关于“Windows无法验证设备所需的驱动程序的数字签名”错误的解决方法
  13. 网络编程学习笔记之TCP_01(帅帅老师讲堂)
  14. PHP开发API签名验证
  15. windows虚拟机共享windows主机文件
  16. 如何设置 RecyclerView Item内子控件点击事件
  17. htc android 9,点赞!HTC宣布这4款手机可升级至安卓9.0:均为U系列
  18. 在docker容器中创建用户组和用户,并且多用户共用一个anaconda环境
  19. 解决html2canvas截图空白的问题
  20. 谣言检测相关论文阅读笔记:Towards Multi-Modal Sarcasm Detection via Hierarchical Congruity Modeling

热门文章

  1. 程序设计考试大纲(高级程序员级)
  2. php单链表检测有没有环,写一段代码判断单向链表中有没有形成环,如果形成环,请找出环的入口处,即P点...
  3. 【python量化】将Transformer模型用于股票价格预测
  4. deepin linux 安装Clion 以及系统配置
  5. tf-faster-rcnn在cpu下运行demo、测试和训练自己的数据集
  6. 你最喜欢信用卡的哪个优点?
  7. PostGIS教程五:数据
  8. java.util.StringTokenizer
  9. luminati 还原IP端口数据
  10. Message创建方式:new Message和obtainMessage的区别