本文主要是介绍链式前向星板子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
对于树,有的时候邻接表可能扩容上慢。而我们可以确定是n-1条边,所以我们可以用“记录前驱节点”的链式的方式存到一起 ———— 链式前向星。
head代表点a在链式前向星nodes数组中,a链的首位于哪个位置。
a链的后继结点都可以通过next 来找到 (许多时候开的是next数组,这里用结构体写一起了)。
struct node
{int b, t, next;
}nodes[2 * maxn];int k = 0;
int head[maxn];
inline void add(int a,int b,int t)
{k++;nodes[k].b = b;nodes[k].t = t;nodes[k].next = head[a];head[a] = k;
}
P2680 [NOIP2015 提高组] 运输计划 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
其实是这道NOI把我卡常了,直接学会链式前向星~~
这篇关于链式前向星板子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!