思路 拓扑排序其实就是一个BFS的搜索过程,注意如何使用队列来维护的,另外,还要注意一下图的存储方式 const int N = 1e5 + 10;//数据范围,一般边数组要比点数组多开一倍空间 int n, m;//点数和边数 int h[N], e[N], ne[N], idx = 0; void add(int a, int b) { e[idx] = b, ne[idx] = h[a], h[a] = idx++; } int main() { cin >> n >> m; memset(h, -1, sizeof h);//记得初始...