|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.util.Observable fr.inria.opengve.bridge.algorithms.StepAlgo<V,E> fr.inria.opengve.bridge.algorithms.undirected.minCut.NagamochiMinCut<V,E,G>
V
- The type of verticesE
- The type of linkspublic abstract class NagamochiMinCut<V,E extends Edge<V>,G extends Graph<V,E>>
Compute the minimum cut of a graph. The algorithm used to computed the
minimum cut is based on the algorithm given by H. Nagamochi and T. Ibaraki
("Computing edge connectivity in mulyigraphs and capacited graphs") SIAM
Journal on Discrete Mathematics 5 (1992). The computation of minimum cut (run()
)
must be preceded by initialisation (setEdgesValueMap(Map)
,
setEdgesValueName(String)
, ...). The result of the computation can
be given as a set of edges or a cuple of vertex set (getEdgeMinCut()
and getVertexMinCut()
).
Nested Class Summary |
---|
Nested classes/interfaces inherited from class fr.inria.opengve.bridge.algorithms.StepAlgo |
---|
StepAlgo.StepAlgoMessage, StepAlgo.StepAlgoMessageType |
Constructor Summary | |
---|---|
NagamochiMinCut(G g)
Initialize the algorithm. |
|
NagamochiMinCut(G g,
boolean stepMode)
Initialize the algorithm with step mode set to a given value |
Method Summary | |
---|---|
protected abstract CopyGraph<V,E,G> |
createCopier()
Create a graph copier |
protected abstract E |
createEdge(V v1,
V v2)
Create a new edge |
protected abstract G |
createEmptyGraph()
Create a new empty graph |
protected abstract HierarchicalSet<E> |
createEmptySet()
Create a new empty edge set (based on an empty vertex set) |
protected abstract HierarchicalSet<V> |
createEmptyVertexSet()
Create a new empty vertex set |
HierarchicalSet<E> |
getEdgeMinCut()
Give the minimum cut of the graph as a edge set. |
HierarchicalSet<V>[] |
getVertexMinCut()
Give the minimum cut of the graph as a cuple of vertex set. |
void |
run()
Compute the minimum cut of the graph. |
void |
setEdgesValueContext(java.lang.Object context)
Set the context used to load edges values in the map. |
void |
setEdgesValueMap(Map m)
Set the map used to load edges values. |
void |
setEdgesValueName(java.lang.String name)
Set the name used to load edges values in the map. |
Methods inherited from class fr.inria.opengve.bridge.algorithms.StepAlgo |
---|
ends, getDemoMode, getStepMode, isEnded, nextStep, notifyGraphDisplayRequest, notifyGraphDisplayRequest, notifyLabelEdgesRequest, notifyLabelVerticesRequest, pause, setPauseMode, setTime, start |
Methods inherited from class java.util.Observable |
---|
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public NagamochiMinCut(G g, boolean stepMode)
g
- The graphstepMode
- The step modepublic NagamochiMinCut(G g)
g
- The graph.Method Detail |
---|
protected abstract HierarchicalSet<V> createEmptyVertexSet()
protected abstract HierarchicalSet<E> createEmptySet()
protected abstract G createEmptyGraph()
protected abstract CopyGraph<V,E,G> createCopier()
protected abstract E createEdge(V v1, V v2)
public void setEdgesValueMap(Map m)
m
- The map used to load edges values.public void setEdgesValueName(java.lang.String name)
name
- The name used to edges values in the map.public void setEdgesValueContext(java.lang.Object context)
context
- The context used to edges values in the map.public void run()
run
in interface java.lang.Runnable
run
in class StepAlgo<V,E extends Edge<V>>
public HierarchicalSet<E> getEdgeMinCut()
public HierarchicalSet<V>[] getVertexMinCut()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |