List<Set<Node>> (int startIndex) { // Find SCCs in the subgraph induced // by vertices startIndex and beyond. // A call to StrongConnectivityAlgorithm // would be too expensive because of the // need to materialize the subgraph. // So - do a local search by the Tarjan's // algorithm and pretend that vertices // with an index smaller than startIndex // do not exist. for (Node Node : myGraph.getNodes()) { int vI = toI(Node); if (vI < startIndex) { continue; } if (!myVIndex.containsKey(Node)) { getSCCs(startIndex, vI); } } List<Set<Node>> result = myFoundSCCs; myFoundSCCs = null; return result; }