public class DirectedOrderedSparseMultigraph<V,E> extends DirectedSparseMultigraph<V,E> implements DirectedGraph<V,E>, MultiGraph<V,E>
DirectedGraph
, suitable for sparse graphs,
that orders its vertex and edge collections
according to insertion time.edges, vertices
edgeType
Constructor and Description |
---|
DirectedOrderedSparseMultigraph()
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
boolean |
addVertex(V vertex)
Adds
vertex to this graph. |
static <V,E> Factory<DirectedGraph<V,E>> |
getFactory()
Returns a
Factory that creates an instance of this graph type. |
java.util.Collection<E> |
getIncidentEdges(V vertex)
Returns the collection of edges in this graph which are connected to
vertex . |
java.util.Collection<V> |
getNeighbors(V vertex)
Returns the collection of vertices which are connected to
vertex via any edges in this graph. |
java.util.Collection<V> |
getPredecessors(V vertex)
Returns a
Collection view of the predecessors of vertex
in this graph. |
java.util.Collection<V> |
getSuccessors(V vertex)
Returns a
Collection view of the successors of vertex
in this graph. |
addEdgeWithEndpoints, containsEdge, containsVertex, findEdge, getDest, getEdgeCount, getEdgesView, getEndpoints, getIncoming_internal, getInEdges, getOutEdges, getOutgoing_internal, getSource, getVertexCount, getVerticesView, isDest, isSource, removeEdge, removeVertex
getDefaultEdgeType, getEdgeCount, getEdges, getEdgeType, hasEqualEdgeType, validateEdgeType
addEdge, addEdge, addEdgeWithEndPoints, addEdgeWithVertices, addEdgeWithVertices, degree, findEdgeSet, getIncidentCount, getIncidentVertices, getNeighborCount, getOpposite, getPredecessorCount, getSuccessorCount, getValidatedEndpoints, inDegree, isIncident, isNeighbor, isPredecessor, isSuccessor, outDegree
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addEdge, addEdge, getDest, getEndpoints, getInEdges, getOpposite, getOutEdges, getPredecessorCount, getSource, getSuccessorCount, inDegree, isDest, isPredecessor, isSource, isSuccessor, outDegree
addEdgeWithVertices, addEdgeWithVertices, containsEdge, containsVertex, degree, findEdge, findEdgeSet, getDefaultEdgeType, getEdgeCount, getEdgeCount, getEdges, getEdgesView, getEdgeType, getIncidentCount, getIncidentVertices, getNeighborCount, getVertexCount, getVerticesView, isIncident, isNeighbor, removeEdge, removeVertex
public DirectedOrderedSparseMultigraph()
public static <V,E> Factory<DirectedGraph<V,E>> getFactory()
Factory
that creates an instance of this graph type.V
- the vertex type for the graph factoryE
- the edge type for the graph factorypublic boolean addVertex(V vertex)
Hypergraph
vertex
to this graph. Fails if vertex
is null or already in the graph.addVertex
in interface Hypergraph<V,E>
addVertex
in class DirectedSparseMultigraph<V,E>
vertex
- the vertex to addtrue
if the add is successful, and false
otherwisepublic java.util.Collection<V> getPredecessors(V vertex)
Graph
Collection
view of the predecessors of vertex
in this graph. A predecessor of vertex
is defined as a vertex v
which is connected to
vertex
by an edge e
, where e
is an outgoing edge of
v
and an incoming edge of vertex
.getPredecessors
in interface Graph<V,E>
getPredecessors
in interface Hypergraph<V,E>
getPredecessors
in class DirectedSparseMultigraph<V,E>
vertex
- the vertex whose predecessors are to be returnedCollection
view of the predecessors of
vertex
in this graphpublic java.util.Collection<V> getSuccessors(V vertex)
Graph
Collection
view of the successors of vertex
in this graph. A successor of vertex
is defined as a vertex v
which is connected to
vertex
by an edge e
, where e
is an incoming edge of
v
and an outgoing edge of vertex
.getSuccessors
in interface Graph<V,E>
getSuccessors
in interface Hypergraph<V,E>
getSuccessors
in class DirectedSparseMultigraph<V,E>
vertex
- the vertex whose predecessors are to be returnedCollection
view of the successors of
vertex
in this graphpublic java.util.Collection<V> getNeighbors(V vertex)
Hypergraph
vertex
via any edges in this graph.
If vertex
is connected to itself with a self-loop, then it will be included in the collection returned.getNeighbors
in interface Hypergraph<V,E>
getNeighbors
in class DirectedSparseMultigraph<V,E>
vertex
- the vertex whose neighbors are to be returnedvertex
,
or null
if vertex
is not presentpublic java.util.Collection<E> getIncidentEdges(V vertex)
Hypergraph
vertex
.getIncidentEdges
in interface Hypergraph<V,E>
getIncidentEdges
in class DirectedSparseMultigraph<V,E>
vertex
- the vertex whose incident edges are to be returnedvertex
,
or null
if vertex
is not presentCopyright © 2021, 2022 Herve Girod. All Rights Reserved. Documentation and source under the BSD 3-Clause licence