1,基本思想
输出有向无环图的其中一个拓扑序列比较简单,输出所有的拓扑序列则要用到回溯的思想和递归的方法。这里暂不对回溯法做解释。
2,代码实现
#include<iostream>
#include<vector>
using namespace std;
#define Max 9999
vector<int> result; //用来保存并输出拓扑结果
int n, m; //n 为顶点数, m 为边数
int G[Max][Max];
bool visited[Max];
int inDegree[Max]; //记录各个顶点的入度
void dfs()
{
if (result.size() == n)
{