数据结构-(图)—存储结构

注:这一节我学习的时候,其实没太区分存储结构。我就把邻接矩阵;邻接表;邻接多重表;十字链表这四个当成算法去学习。明白各自的规则即可。

不足:一轮的时候,各自割裂的学习,没有把四个进行横向比较学习,导致了可能会出现有综合性质的题目判断不正确,故在二轮的时候,要将这四个纵向进行比较。一轮回顾的时候也可以做做大题,对知识点的理解也有好处。

而且我发现题目的重点就有,将这四种方法的区分。

1.四种方式的比较

 上面的纵向比较的方式,我在一轮复习的时候,没有太注意,二轮的时候一定要捡起来,强化

2.结论(非常重点)

对于图的邻接矩阵;邻接表;做题时考察的比较其唯一性。

注:图的邻接矩阵只和顶点数相关和实际的边数无关。

3.四种类型

3.1邻接矩阵法

 表示方式:

 思考下面问题:

 易混:出度和入度方式,

代码分析:(一轮的时候没有注重,二轮要熟练)

 3.2邻接表法

基本思想:用顺序表来存储图中顶点的信息,称为顶点表。为每个顶点建立一个单链表来存储边的信息,称为该结点的边表(对于有向图为出边表)。这种数组和链表相结合的存储方法称为邻接表。

这时候可以回忆(树的知识)孩子表示法

 重点:两者交叉对比

拓展:结合上一节所说的有向图和无向图进行比较

 3.3十字链表

简单区分

 基本概念

 性能分析(有点忘了)要看视频回顾

3.4邻接多重表

基本思想:邻接多重表是无向图的一种链式存储结构,是对邻接表法存储无向图的一种优化,为了解决在邻接表中对边执行删除等操作时,需要分别在两个顶点的边表中遍历,效率较低。 

可见,邻接表中同一条边用两个边表结点表示,邻接多重表中同一条边只用一个边表结点表示。邻接多重表中所有依附于同一个顶点的边在同一个链表中,因为一条边依附两个顶点,所以每个边结点同时链接在两个链表中,这正是多重的含义。

 

一些基本概念:

两者对比:(注意区分所描述的对象)

 

 图示:

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值