算法与数据结构--有向图以及拓扑排序

一.有向图基本概念

有向图是由一组顶点和一组有方向的边组成的。

出度:
由某个顶点指出的边的个数称为该顶点的出度。
入度:
指向某个顶点的边的个数称为该顶点的入度。
有向路径:
由一系列顶点组成,对于其中的每个顶点都存在一条有向边,从它指向序列中的下一个顶点。
有向环:
一条至少含有一条边,且起点和终点相同的有向路径。

二.拓扑排序

1.概念和我们为什么要用拓扑排序

给定一幅有向图,将所有的顶点排序,使得所有的有向边均从排在前面的元素指向排在后面的元素,此时就可以明确的表示出每个顶点的优先级

2.应用场景

如:指定合理的学习方案

算法与数据结构--有向图以及拓扑排序_第1张图片

需要注意的是:拓扑排序适用于没有有向环的图

3.实现

参考教程:数据结构——拓扑排序和逆拓扑排序_哔哩哔哩_bilibili
拓扑排序!(自讲)_哔哩哔哩_bilibili

算法与数据结构--有向图以及拓扑排序_第2张图片

4.例题与代码(代办)

你可能感兴趣的:(算法,数据结构)