net.sourceforge.combean.graph.alg.partition
Class SCCByDFSImpl

Package class diagram package SCCByDFSImpl
java.lang.Object
  extended by net.sourceforge.combean.graph.alg.AbstractGraphAlg
      extended by net.sourceforge.combean.graph.alg.partition.AbstractSCCImpl
          extended by net.sourceforge.combean.graph.alg.partition.SCCByDFSImpl
All Implemented Interfaces:
GraphAlgorithm, PartitioningAlg, StronglyConnectedComponentsAlg

public final class SCCByDFSImpl
extends AbstractSCCImpl

Find strongly connected components by DFS (Tarjan's algorithm for SCCs).


Constructor Summary
SCCByDFSImpl()
          constructor
 
Method Summary
 DepthFirstSearch getDfs()
           
 NodeNumbering getDfsNumbering()
           
 NodeNumbering getLowNumbering()
           
 void run()
          Execute the algorithm.
 void setDfs(DepthFirstSearch dfs)
          Set the DFS helper algorithm.
 void setDfsNumbering(NodeNumbering dfsNum)
          Set the dfs numbering.
 void setLowNumbering(NodeNumbering lowNum)
          Set the low numbering.
 
Methods inherited from class net.sourceforge.combean.graph.alg.partition.AbstractSCCImpl
getVisitor, setNodeNumberingAsVisitor, setVisitor
 
Methods inherited from class net.sourceforge.combean.graph.alg.AbstractGraphAlg
getGraph, setGraph
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sourceforge.combean.interfaces.graph.alg.GraphAlgorithm
getGraph, setGraph
 

Constructor Detail

SCCByDFSImpl

public SCCByDFSImpl()
constructor

Method Detail

getDfsNumbering

public final NodeNumbering getDfsNumbering()
Returns:
Returns the dfs numbering.

setDfsNumbering

public final void setDfsNumbering(NodeNumbering dfsNum)
Set the dfs numbering. If left unset, the NodeNumberingAdvisor will be consulted.

Parameters:
dfsNum - The dfs numbering to set.

getLowNumbering

public final NodeNumbering getLowNumbering()
Returns:
Returns the low numbering.

setLowNumbering

public final void setLowNumbering(NodeNumbering lowNum)
Set the low numbering. If left unset, the NodeNumberingAdvisor will be consulted.

Parameters:
lowNum - The low numbering to set.

getDfs

public final DepthFirstSearch getDfs()
Returns:
Returns the dfs algorithm.

setDfs

public final void setDfs(DepthFirstSearch dfs)
Set the DFS helper algorithm. If left unset RecursiveDFSImpl will be used

Parameters:
dfs - The dfs algorithm to set.
See Also:
RecursiveDFSImpl

run

public void run()
Description copied from interface: GraphAlgorithm
Execute the algorithm.