1 图的表示


1、对于图 G=(V,E)G = (V,E)G=(V,E),存在两种标准表示方法

  • 邻接链表:由一个包含 ∣V∣|V|∣V∣ 条链表的数组构成,每个节点有一条链表;
  • 邻接矩阵;
  • 两种表示方法既可表示无向图,也可表示有向图;


2、选择邻接链表的情况

  • 稀疏图(边的条数 ∣E∣|E|∣E∣ 远远小于 ∣V∣2|V|^2∣V∣2 的图)一般采用邻接链表方式表示;

3、选择邻接矩阵的情况

  • 稠密图(边的条数 ∣E∣|E|∣E∣ 接近 ∣V∣2|V|^2∣V∣2 的图)一般采用邻接矩阵方式表示;
  • 邻接矩阵表示法更为简单,当图规模较小时,一般采用邻接矩阵方式表示;
  • 如果需要快速判断两个节点之间是否相连,一般采用邻接矩阵方式表示;

2 邻接链表(Adjacency List)


  • 不论是有向图还是无向图,邻接链表的存储空间需求均为 O(V+E)O(V + E)O(V+E) ;
  • 存在一个缺陷:无法快速判断一条边 (u,v)(u, v)(u,v) 是否是图中的一条边(或快速获取一条边的权重);

3 邻接矩阵(adjacency Matrix)


  • 不管一个图中存在多少条边,邻接矩阵的空间需求均为 O(∣V∣2)O(|V|^2)O(∣V∣2);
  • 可以快速判断一条边 (u,v)(u, v)(u,v) 是否是图中的一条边(或快速获取一条边的权重)

图的表示(Adjacency List + Adjacency Matrix)相关推荐

  1. 边列表(edgelist)和邻接矩阵(adjacency)相互转化(how to convert edge list to adjacency, or adjacency to edge list)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 边列表(edgelist)和邻接矩阵(adjacency)相互转化(how to convert edge list to adjac ...

  2. 图数据结构之邻接链表Adjacency List(Python版)

    前面学过两种图的数据结构,有兴趣的可以查阅:图数据结构之字典实现(Python版)https://blog.csdn.net/weixin_41896770/article/details/12812 ...

  3. 计算任意一个图生成树的个数——Kirchhoff 的Matrix Tree 方法Java实现

    计算任意一个图的生成树的个数,是Kirchhoff提出的理论,通常称为Matrix Tree Theorem,原理很简单: Let G be a graph with V(G)={v1,v2,..., ...

  4. NeurIPS 2021 | 简单且通用的多视图对比图聚类方法

    随着信息时代的蓬勃发展,产生了大量多视图属性图图数据.随即,也出现许多的多视图聚类方法,但这些方法只利用数据中的多属性信息或者多拓扑图信息,没有完整地利用属性图数据的所有信息. 本期 AI Drive ...

  5. 摘抄一篇:图的存储结构

    . 图的邻接矩阵(Adjacency Matrix)存储表示法 设图 A = (V, E)是一个有 n 个顶点的图, 图的邻接矩阵是一个二维数组 A.edge[n][n], 用来存放顶点的信息和边或弧 ...

  6. python-igraph创建网络(图)

    python-igraph创建网络(图) 1.网络布局 2.显示网络 3.保存网络 4.创建网络 未完待续 igraph包含了很多创建网络和显示网络的功能,后面专门讲述绘制网络功能,这边为了查看方便, ...

  7. 数据库中各表关联图及其说明_如何在图中思考:图论及其应用的说明性介绍

    数据库中各表关联图及其说明 by Vardan Grigoryan (vardanator) 由Vardan Grigoryan(vardanator) 如何在图中思考:图论及其应用的说明性介绍 (H ...

  8. C语言数据结构-第七章图-电大同步进度

    第七章图 内容简介 图结构中结点之间的关系是任意的,每个元素都可以和其他任何元素相关,即元素之间是多对多的关系. 图作为一种非线性数据结构,被广泛应用于多个技术领域,例如系统工程.化学分析.统计力学. ...

  9. 零基础多图详解图神经网络(GNN/GCN)【论文精读】

    视频链接:零基础多图详解图神经网络(GNN/GCN)[论文精读] - 哔哩哔哩 (bilibili.com) 博客链接:A Gentle Introduction to Graph Neural Ne ...

  10. GCN实战深入浅出图神经网络第五章:基于Cora数据集的GCN节点分类 代码分析

    GCN实战深入浅出图神经网络第五章:基于Cora数据集的GCN节点分类 代码分析 文章目录 GCN实战深入浅出图神经网络第五章:基于Cora数据集的GCN节点分类 代码分析 SetUp,库声明 数据准 ...

最新文章

  1. asp.net 取得上一页的url
  2. babel7中 preset-env 完全使用
  3. centos 开机启动java_java程序在centos7里面开机自启动
  4. [C++STL]C++实现unordermap容器和unorderset容器
  5. MIP个性化组件提交规范
  6. 设置jstree只展示到2级_你做的私域流量属于什么级别?80%的商家都还只在第2级...
  7. Python风格总结:判断元素是否在列表中存在
  8. 【java】方法中参数列表的应用
  9. wxpython多线程 假死_wxpython多线程防假死与线程间传递消息实例详解
  10. 腾讯云与玉符科技达成战略合作 共建SaaS生态统一身份认证体系
  11. allegro隐藏/显示铜皮
  12. activator类的使用
  13. Excel数据导入___你hold住么(二)
  14. ROS小车PS2遥控器的使用注意事项
  15. Unity实现动态修改模型材质球
  16. R语言中is.na()
  17. 使用ZAP寻找敏感文件和目录
  18. 如何建立Qt Creator交叉编译嵌入式Linux
  19. 小尝试:基于指标体系的数据仓库搭建和数据可视化
  20. xilinx官网申请IP

热门文章

  1. 逆转录转座子简单介绍
  2. C语言实现入门级小游戏——三子棋
  3. 新物种爆炸:认知升级时代的新商业思维
  4. LED点阵屏中“鬼影”现象的分析与解决
  5. 阅读源码的经验总结,以进一步的提升自己,加油小甜妮儿
  6. u3d快速入门图文教程
  7. ROI Pooling和ROI Align、ROI Warp解析
  8. TSE无线通信(铺垫)
  9. 【火电机组、风能、储能】高比例风电电力系统储能运行及配置分析(Matlab代码实现)
  10. js 取表格table td值 botton a