图有以下四种存储方式

  1. 邻接矩阵:数组实现的顺序存储,空间复杂度高,不适合存储稀疏图
  2. 邻接表:顺序 + 链式存储
  3. 十字链表:存储有向图
  4. 邻接多重表:存储无向图

十字链表存储有向图

  1. 空间复杂度: O ( ∣ V ∣ + ∣ E ∣ ) O(|V|+|E|) O(V+E)
  2. 如何找到指定顶点的所有出边:顺着绿色线路找
  3. 如何找到指定顶点的所有入边:顺着橙色线路找

注意:十字链表只用于存储有向图

邻接矩阵、邻接表存储无向图【不推荐】

  1. 邻接表:每条边对应两份冗余信息,删除顶点、删除边等操作,时间复杂度高
  2. 邻接矩阵:空间复杂度高 O ( ∣ V ∣ 2 ) O(|V|^2) O(V2)

邻接多重表存储无向图

  1. 空间复杂度:O(|V|+|E|)
  2. 删除边、删除结点等操作很方便

注意:邻接多重表表只适用于存储无向图

知识回顾与重要考点

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐