一 深度优先遍历,参考前面DFS(white and gray and black) 二 根据定点以及边数目进行判断 如果m(edge)大于n(vertex),那么肯定存在环 算法如下: 1 删除所有入度小于等于1的顶点, 并且将和这些顶点相关的顶点入度减1 2 将入度变为1的顶点全部删除,重复上述动作,如果最后还有顶点那么图中存在环 具体代码如下: #include <iostream> using namespace std; #define MAX_VERTEX_NUM 128 enum…