首先获取所有的入度为0的顶点,入队列
从队列中获取一个入度为0的顶点
获取该顶点边,将边的另一端顶点入度减一,如果为0,也入队列
利用一个拓扑排序,可以判断有向图是否带环。
做法就是:遍历一个顶点,记录count++。最后如果发现count数小于图的顶点数,就有环。
还有一个判断有向图是否带环的方法:
利用深度优先,遍历一个图。
图的每一个顶点设置一个颜色属性,初始为0,遍历的时候置为1,结束遍历的时候置为2,如果在遍历过程中,发现遍历到了颜色为1的顶点,意味着有环。
首先获取所有的入度为0的顶点,入队列
从队列中获取一个入度为0的顶点
获取该顶点边,将边的另一端顶点入度减一,如果为0,也入队列
利用一个拓扑排序,可以判断有向图是否带环。
做法就是:遍历一个顶点,记录count++。最后如果发现count数小于图的顶点数,就有环。
还有一个判断有向图是否带环的方法:
利用深度优先,遍历一个图。
图的每一个顶点设置一个颜色属性,初始为0,遍历的时候置为1,结束遍历的时候置为2,如果在遍历过程中,发现遍历到了颜色为1的顶点,意味着有环。