edu.uci.ics.jung.graph.impl
Class SetHypervertex

java.lang.Object
  extended by edu.uci.ics.jung.utils.UserDataDelegate
      extended by edu.uci.ics.jung.graph.impl.AbstractElement
          extended by edu.uci.ics.jung.graph.impl.AbstractArchetypeVertex
              extended by edu.uci.ics.jung.graph.impl.AbstractHypervertex
                  extended by edu.uci.ics.jung.graph.impl.CollectionHypervertex
                      extended by edu.uci.ics.jung.graph.impl.SetHypervertex
All Implemented Interfaces:
ArchetypeVertex, Element, Hypervertex, UserDataContainer, Cloneable

public class SetHypervertex
extends CollectionHypervertex

An implementation of Hypervertex that maintains independent Sets of incident edges and neighbors. This allows query methods (e.g. isIncident) to execute in O(1) time, but findEdge still requires time proportional to the degree of this vertex.

Author:
Joshua O'Madadhain

Nested Class Summary
 
Nested classes/interfaces inherited from interface edu.uci.ics.jung.utils.UserDataContainer
UserDataContainer.CopyAction
 
Field Summary
 
Fields inherited from class edu.uci.ics.jung.graph.impl.CollectionHypervertex
incident_edges
 
Fields inherited from class edu.uci.ics.jung.graph.impl.AbstractElement
id, m_Graph
 
Fields inherited from class edu.uci.ics.jung.utils.UserDataDelegate
factory, udc_delegate
 
Constructor Summary
SetHypervertex()
           
 
Method Summary
protected  void initialize()
          Initializes all the data structures for this element.
 
Methods inherited from class edu.uci.ics.jung.graph.impl.CollectionHypervertex
getEdges_internal, getNeighbors_internal
 
Methods inherited from class edu.uci.ics.jung.graph.impl.AbstractHypervertex
connectEdge, copy, disconnectEdge, toString
 
Methods inherited from class edu.uci.ics.jung.graph.impl.AbstractArchetypeVertex
degree, equals, findEdge, findEdgeSet, getEqualVertex, getEquivalentVertex, getIncidentEdges, getIncidentElements, getNeighbors, isIncident, isNeighborOf, numNeighbors
 
Methods inherited from class edu.uci.ics.jung.graph.impl.AbstractElement
addGraph_internal, getGraph, hashCode, removeGraph_internal
 
Methods inherited from class edu.uci.ics.jung.utils.UserDataDelegate
addUserDatum, clone, containsUserDatumKey, getUserDatum, getUserDatumCopyAction, getUserDatumKeyIterator, importUserData, removeUserDatum, setUserDataFactory, setUserDatum
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface edu.uci.ics.jung.graph.ArchetypeVertex
degree, findEdge, findEdgeSet, getEqualVertex, getEquivalentVertex, getIncidentEdges, getNeighbors, isIncident, isNeighborOf, numNeighbors
 
Methods inherited from interface edu.uci.ics.jung.graph.Element
getGraph, getIncidentElements
 
Methods inherited from interface edu.uci.ics.jung.utils.UserDataContainer
addUserDatum, clone, containsUserDatumKey, getUserDatum, getUserDatumCopyAction, getUserDatumKeyIterator, importUserData, removeUserDatum, setUserDatum
 

Constructor Detail

SetHypervertex

public SetHypervertex()
Method Detail

initialize

protected void initialize()
Description copied from class: AbstractElement
Initializes all the data structures for this element. (This is used on cloned elements, since clone() copies some information that should not be in the new element.)

Overrides:
initialize in class AbstractHypervertex