笔试选择题-图

做过笔试的同学应该知道,数据结构比较常考的除了栈,还有一个数据结构就是图。所以本篇文章就是用来理清图的一些简单的知识点。

无点不成图,说明图可以没有边,但不可无点。

  • 有向图和无向图:边是否有方向
  • 点的度:对无向图,指的是该点所连接的边数;对于有向图,分入度和出度,指向该顶点的边数就是入度,反之就是出度,此时点的度为出度+入度
  • 权值:点和边可以有具体的属性含义,称为权值。

存储形式

以无向图为例

  1. 邻接矩阵(二维数组)
    在这里插入图片描述
    无向图邻接矩阵是对称的,且顶点的度=某行或者某列非0元素的个数。

  2. 邻接表
    只存放有连接的边。节省内存,适合顶点数目较多的场景。List<Node> Adj[] 数组可实现。每一个List集合存放每个顶点到其它顶点的信息,Node包含顶点的编号和边的权值
    在这里插入图片描述
    针对无向图:连通分量
    针对有向图:强连通分量
    在这里插入图片描述
    所谓的(强)连通分量是指,你这个子图,一旦加入其它不在该子图的点,则该子图就不连通。

性质

无向所有顶点的度之和为偶数,因为度=边数*2

有向图所有点的入度之和=出度之和

n个节点的完全有向图含有边的数目为n*(n-1),每两点之间有两条边相互指向对方,n-1代表每个点有多少条边指向该点(也可以反过来,指向其它点的边)然后有n个点,所以的证。

完全无向图:由于任意两点都有边,从而可得边数为n*(n-1)/2,推导如下,也可以理解为完全有向图的一半

n-1 + n-2 + n-3 +...+2+1

n个点的无向连通图的最少边数:n-1。但是如果要求图在任何情况下都是连通的,需要的最少边为:(n-1)*(n-2)/2 + 1,其实就是n-1个点的完全无向图的边数+1,这样就能保证绝对连通。

n个点的有向连通图的最少边数:n,首尾相连

例题

  1. 用邻接矩阵法存储一个图时,在不考虑压缩存储的情况下,所占用的存储空间大小只与图中结点个数有关,而与图的边数无关
  2. n顶点26边无向图,每个顶点度至少为4,求n的最大值?(三七互娱)
    总度数:262 = 52,顶点度至少为4,说明总度数至少为4n,4*n <= 52,固n最大为13
  3. 假设一个无向图中包含 12 个顶点,其中 5 个顶点有 5 个度,7 个顶点有 7 个度,那么这个图有几条边 ?
    度数和边的关系是两倍,从而得37

AOV网和AOE网

拓扑排序

最小生成树

设无向图 G 中有 n 个顶点,则该无向图的最小生成树上有n-1条边。
例题
例题
例题

更多

无向图特有:连接多重表。有向图特有:十字链表,边集数组。二者共有:邻接表,邻接矩阵。
例题
哈密顿图

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值