链式前向星原理以及具体实现(看这一篇就够了!!!)

链式前向星是一种简化版的邻接链表,用于高效存储图中每条边及其起点信息。通过额外的next和head数组,能快速查找以特定节点为起点的边。本文将介绍其原理并提供代码示例。
摘要由CSDN通过智能技术生成

链式前向星是什么?图的一种存储方式
有什么用?简化版的邻接链表的存储。
链式前向星就是存储图中的每条边,但是,有几个额外的数组,可以用于在很短时间内查找(类似邻接表)到以某一点为起点的边。
那么为什么要这个写这个呢?他简单啊。对,就是这样。

————————————————————
首先,我们需要两个数组edge,var(当然你也可以用结构体)来分别存新加入边的权重和终点。同时为了能够遍历以某一节点为起点的所有边,我们还需要两个数组~~(精髓来了)~~ ,next[i],head[i],分别用来存储与第i条边起点相同的上一条边的下标,以及节点i为起点的最后一条边的下标。
最后听过head以及next数组就能实现类似邻接表的功能了。
说了这么多,上代码吧。

#include<stdlib.h>
#defien maxm 1000000
#defien maxn 100000
int edge[maxm
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值