图的表示——邻接表与邻接矩阵

本文介绍了图的两种常见表示方法:邻接表和邻接矩阵,详细阐述了无向图、有向图及带权图在这两种表示中的应用。邻接矩阵适用于快速判断两点间是否存在边,但空间复杂度高,更适合稠密图。而邻接表在节省空间方面更具优势,尤其适合稀疏图,通过链表存储信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        为了能在程序中对图进行处理,我们一般会用邻接表或邻接矩阵将图的顶点与边存储下来,根据问题的不同,使用不同的存储方式会相应的降低算法的复杂度。

邻接表

         记顶点和边的集合分别用V和E来表示,|V| 和 |E| 分别表示顶点和边的个数。邻接矩阵用|V|*|V| 的二维数组来表示图,v[i][j]表示顶点i与顶点j的关系。

一、无向图

        在无向图中,只需要知道两个顶点之间是否有边相连就可以确定顶点之间的关系,即若是顶点i指向顶点j,则就有顶点j指向顶点i,那么就可以将v[i][j]与v[j][i]设为1(“1”表示两顶点相连),否则就设为0。这样就表示了一个无向图。

无向图对应的邻接矩阵
i/j 0 1 2 3 4
0 0 1 0 1 0
1 1 0 1 1 0
2 0 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值