Package org.jgrapht.graph
Class DirectedAcyclicGraph.VisitedHashSetImpl
- java.lang.Object
-
- org.jgrapht.graph.DirectedAcyclicGraph.VisitedHashSetImpl
-
- All Implemented Interfaces:
java.io.Serializable,DirectedAcyclicGraph.VisitedStrategy,DirectedAcyclicGraph.VisitedStrategyFactory
- Enclosing class:
- DirectedAcyclicGraph<V,E>
protected static class DirectedAcyclicGraph.VisitedHashSetImpl extends java.lang.Object implements DirectedAcyclicGraph.VisitedStrategy, DirectedAcyclicGraph.VisitedStrategyFactory
A visited strategy using aHashSet.This implementation doesn't seem to perform as well, though I can imagine circumstances where it should shine (lots and lots of vertices). It also should have the lowest memory footprint as it only uses storage for indices that have been visited.
- Author:
- Peter Giles
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description VisitedHashSetImpl()Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearVisited(int index)Clear the visited state of the given topological index.booleangetVisited(int index)Get if the given topological index has been visited.DirectedAcyclicGraph.VisitedStrategygetVisitedStrategy(DirectedAcyclicGraph.Region affectedRegion)Create a new instance ofDirectedAcyclicGraph.VisitedStrategy.voidsetVisited(int index)Mark the given topological index as visited.
-
-
-
Method Detail
-
getVisitedStrategy
public DirectedAcyclicGraph.VisitedStrategy getVisitedStrategy(DirectedAcyclicGraph.Region affectedRegion)
Description copied from interface:DirectedAcyclicGraph.VisitedStrategyFactoryCreate a new instance ofDirectedAcyclicGraph.VisitedStrategy.- Specified by:
getVisitedStrategyin interfaceDirectedAcyclicGraph.VisitedStrategyFactory- Parameters:
affectedRegion- the affected region- Returns:
- a new instance of
DirectedAcyclicGraph.VisitedStrategyfor the affected region
-
setVisited
public void setVisited(int index)
Description copied from interface:DirectedAcyclicGraph.VisitedStrategyMark the given topological index as visited.- Specified by:
setVisitedin interfaceDirectedAcyclicGraph.VisitedStrategy- Parameters:
index- the topological index
-
getVisited
public boolean getVisited(int index)
Description copied from interface:DirectedAcyclicGraph.VisitedStrategyGet if the given topological index has been visited.- Specified by:
getVisitedin interfaceDirectedAcyclicGraph.VisitedStrategy- Parameters:
index- the topological index- Returns:
- true if the given topological index has been visited, false otherwise
-
clearVisited
public void clearVisited(int index) throws java.lang.UnsupportedOperationExceptionDescription copied from interface:DirectedAcyclicGraph.VisitedStrategyClear the visited state of the given topological index.- Specified by:
clearVisitedin interfaceDirectedAcyclicGraph.VisitedStrategy- Parameters:
index- the index- Throws:
java.lang.UnsupportedOperationException- if the implementation doesn't support (or doesn't need) clearance. For example, if the factory creates a new instance every time, it is a waste of cycles to reset the state after the search of the Affected Region is done, so an UnsupportedOperationException *should* be thrown.
-
-