zoukankan      html  css  js  c++  java
  • 图的常用存储结构

    1.邻接矩阵:在图中任意两个顶点之间都有可能存在关系,邻接矩阵就是用n阶方针来保存一个顶点是否对另一个顶点有“意思”。

    ①无向图

    在无向图中两个顶点有边连接就意味着(v0,v1)和(v1,v0)都有“关系”,即彼此“喜欢”对方。方阵的数据沿对角线对称分布。

    ②有向图

    数据分布不对称。

    ③网的邻接矩阵存储:存在带权的边/弧。如果对对方有“意思”就把前边的“1”改为对应的权值即可。

    -------------------------------------------------------------------------------------------------------------------------------------------------------------

    2.邻接表AdjacencyList:诞生的理由——如果图中顶点多而边/弧的数目少,即顶点之间关系不好,那么整个方针里边就存了几个“1”,显然就很是浪费存储了,邻接矩阵存储的是顶点之间的关系,从空间的使用效率来说适合用于关系比较丰富的图,前人们为了满足关系简单而“人口”众多的图的最小空间开销想啊想,于是就发明了邻接表。

    这种表需要定义两个结构,一个是用来描述顶点的:用于存储顶点的数据信息和指向他“感兴趣”的第一个顶点的指针;另一个是用来描述“被感兴趣”的顶点下标,在有向图中对应的就是出度。

  • 相关阅读:
    JS监听组合按键
    XSS初体验
    debuggap,移动端调试新方式
    简析分页逻辑
    【译】Javascript中的数据类型
    【译】typeof null的前世今生
    一个跨域请求的XSS漏洞再续
    H5页面音频自动播放问题
    一个跨域请求的XSS续
    成功自我管理之压力管理
  • 原文地址:https://www.cnblogs.com/lubiao/p/4822213.html
Copyright © 2011-2022 走看看