public Topological(DirectGraph G) { DirectCycle cycle = new DirectCycle(G); if (!cycle.hasCycle()) { DFSOrder dfsOrder = new DFSOrder(G); order = dfsOrder.ReversePost; } }