脚本宝典收集整理的这篇文章主要介绍了Graph: Topological Sort,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
Graph: TopoLOGical Sort
利用和detect cycle类似的思路, 用DFs + recursion解决。并且一定时一个有向图。
Stack<Integer> stack = new Stack<>();
// 0:unvisit, 1:visited, 2:visiting
public boolean topologicalSort(Node node) {
if(node.state = 2) return true;
node.state = 2;
if(map.get(node) != null) {
for(Node adj : map.get(node)) {
if(adj.state != 1 && topologicalSort(adj)) {
return true;
}
}
}
node.state = 1;
stack.push(node.val);
return false;
}
以上是脚本宝典为你收集整理的Graph: Topological Sort全部内容,希望文章能够帮你解决Graph: Topological Sort所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。