public class FloydWarshallTransitiveClosureStrategy extends FloydWarshallStrategy implements TransitiveClosureAnalyzer
The complexity of this algorithm is O(N^3), where N is the number of nodes.
Graph.nodeLabel(ptolemy.graph.Node),
TransitiveClosureAnalysis| Red (ssb) |
| Red (shahrooz) |
| Constructor and Description |
|---|
FloydWarshallTransitiveClosureStrategy(Graph graph)
Construct a transitive closure analysis for a given directed graph.
|
| Modifier and Type | Method and Description |
|---|---|
protected java.lang.Object |
_compute()
The computation associated with the Floyd-Warshall algorithm.
|
protected void |
_floydWarshallComputation(int k,
int i,
int j)
Overrides the computation associated with the implementation of the
Floyd-Warshall algorithm, for the purpose of computing the transitive
closure.
|
boolean |
pathExistence(Node startNode,
Node endNode)
Check if there exist a path between a starting node and an ending node
on the analyzer's graph.
|
java.lang.String |
toString()
Return a description of the analyzer.
|
boolean[][] |
transitiveClosureMatrix()
Compute the transitive closure of the graph under analysis in the
form of two dimensional array.
|
boolean |
valid()
Check for validity of this strategy.
|
_convertResult, _result, cachingStatus, disableCaching, enableCaching, getCachedResult, graph, obsolete, reset, setCachedResultclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgraphpublic FloydWarshallTransitiveClosureStrategy(Graph graph)
graph - The given directed graph.public boolean pathExistence(Node startNode, Node endNode)
pathExistence in interface TransitiveClosureAnalyzerstartNode - The starting node.endNode - The ending node.public java.lang.String toString()
toString in interface AnalyzertoString in class CachedStrategypublic boolean[][] transitiveClosureMatrix()
transitiveClosureMatrix in interface TransitiveClosureAnalyzerGraph.nodeLabel(ptolemy.graph.Node)public boolean valid()
DirectedGraph in order
to use this algorithm.protected java.lang.Object _compute()
_compute in class FloydWarshallStrategyObject
in order to be stored in the result-cache.protected void _floydWarshallComputation(int k,
int i,
int j)
_floydWarshallComputation in class FloydWarshallStrategyk - The counting parameter of the first loop of the Floyd-Warshall
computation.i - The counting parameter of the second loop of the Floyd-Warshall
computation.j - The counting parameter of the third and last loop of the
Floyd-Warshall computation.