题目链接
https://pintia.cn/problem-sets/994805342720868352/problems/994805343043829760
题解
题目要求
给定一个有向图,请判断一个序列是否是该有向图的拓扑序列。
输入
- N:正整数,不超过1000,图中顶点的数量,顶点索引为[1,N]
- M:正整数,不超过10000,有向边的数量
- M条有向边:开始顶点索引、结束顶点索引
- K:不超过100,待检验的序列的个数
- K个序列:索引为[0,K]
输出
对于每个排列,如果不是拓扑排序则输出其索引
解题思路
- 保存每个结点的前驱结点
- 使用一维数组保存每个结点是否已访问
- 遍历序列判断每个结点的前驱结点是否已访问,如果未访问,则该序列不是拓扑序列
代码
1 | // Problem: PAT Advanced 1146 |
作者:@臭咸鱼
转载请注明出处:https://www.cnblogs.com/chouxianyu/
欢迎讨论和交流!