版权声明:Andy https://blog.csdn.net/Alibaba_lhl/article/details/83795888
前向星
在接触链式前向星之前,先了解一下什么是前向星。
前向星就是一种边集数组。我们先把每条边的起点按照从小到大的顺序排序如果起点一样,那么就按照终点从小到达来排
序。并记录下以某个点为起点的所有边在数组中的起始位置和边的数量,那么前向星就构造好了。
head[i]表示以i为起点的边在数组中储存的第一个位置,
len[i]表示以i为起点的边的条数。
我们输入边的顺序为:
1 2
2 3
3 4
4 5
4 1
1 3
1 5
经过排序后得到:
编号 | 起点u | 终点v |
1 | 1 | 2 |
2 | 1 | 3 |
3 | 1 | 5 |
4 | 2 | 3 |
5 | 3 | 4 |
6 | 4 | 1 |
7 | 4 | 5 |
得到:
head[1] = 1 len[1] = 3
head[2] = 4 len[2] = 1
head[3] = 5 len[3] = 1
head[4] = 6 len[4] = 2