今天偶然看了拓扑排序,想了一下,发现已经忘记了。于是重新炒了一下冷饭,记录一下。
要会写拓扑排序那得先知道什么是拓扑排序,然后是拓扑排序能干嘛,最后才是怎么实现拓扑排序。
一、什么是拓扑排序
首先拓扑排序针对的对象是一个有向无环图,将图中的节点排成一个线性序列,这就是拓扑排序。线性序列要求满足,图中任意一对节点若存在有向边,则必然是在的前面。满足这个条件的序列,叫拓扑序列,得到这个拓扑序列的过程叫做拓扑排序。举个栗子:
今天偶然看了拓扑排序,想了一下,发现已经忘记了。于是重新炒了一下冷饭,记录一下。
要会写拓扑排序那得先知道什么是拓扑排序,然后是拓扑排序能干嘛,最后才是怎么实现拓扑排序。
首先拓扑排序针对的对象是一个有向无环图,将图中的节点排成一个线性序列,这就是拓扑排序。线性序列要求满足,图中任意一对节点若存在有向边,则必然是在的前面。满足这个条件的序列,叫拓扑序列,得到这个拓扑序列的过程叫做拓扑排序。举个栗子: