拓扑序列
首先要说下AOV网,是一个有向但是没有环的图。 而这种图,可以用一种相对有序的数列表示出来。顶点表示活动,边表示其关系。今天要说的就是这种图可以用拓扑序列表示出来。 如果这个网里面有环的话(包括自环),是不能用拓扑序列表示出来的,因此拓扑序列也能拿来判断一个图是否有回环。 具体:拓扑序列完后,输出拓扑序列里的点,会发现比图中的点少,说明有环。
拓扑序列实现:
for(i=1;i<=n;i++) //ingdr[] 为度 用邻接链表存储各个点与点的关系
if(ingdr[i]==0)
put(i);
while(top!=0)
{
a=push();
for(i=1;i<=n;i++)
for(j=v[i].first;j!=-1;j=arcnum[j].next)
if(a==arcnum[j].go)
{
ingdr[i]--;
if(ingdr[i]==0)
put(i);
}
}
经典题目: 家谱树 完完全全把拓扑序列写出来就OK;
拓扑序列的衍生:AOE网 是一种顶点表示事件,边来表示活动的一种网,亦叫作,边表示活动的网。
所以就出来一种衍生物:关键路径,关键路径简而言之就是,这个活动必须完成了,才能