Module org.jgrapht.core
Package org.jgrapht.traverse
Class LexBreadthFirstIterator.BucketList.Bucket
java.lang.Object
org.jgrapht.traverse.LexBreadthFirstIterator.BucketList.Bucket
- Enclosing class:
LexBreadthFirstIterator.BucketList
Plays the role of the container of vertices. All vertices stored in a bucket have
identical label. Labels aren't used explicitly.
Encapsulates operations of addition and removal of vertices from the bucket and removal of a bucket from the data structure.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate LexBreadthFirstIterator<V,
E>.BucketList.Bucket Reference of the bucket with lexicographically smaller label.private LexBreadthFirstIterator<V,
E>.BucketList.Bucket Reference of the bucket with lexicographically larger label.Set of vertices currently stored in this bucket. -
Constructor Summary
ConstructorsConstructorDescriptionBucket
(Collection<V> vertices) Creates a new bucket with allvertices
stored in it.Creates a new Bucket with a singlevertex
in it. -
Method Summary
Modifier and TypeMethodDescription(package private) void
Adds thevertex
to this bucket.(package private) void
insertBefore
(LexBreadthFirstIterator<V, E>.BucketList.Bucket bucket) Inserts this bucket in the data structure before thebucket
.(package private) boolean
isEmpty()
Checks whether this bucket is empty.(package private) V
poll()
Retrieves one vertex from this bucket.(package private) void
Removes this bucket from the data structure.(package private) void
removeVertex
(V vertex) Removes thevertex
from this bucket.
-
Field Details
-
next
Reference of the bucket with lexicographically smaller label. -
prev
Reference of the bucket with lexicographically larger label. -
vertices
Set of vertices currently stored in this bucket.
-
-
Constructor Details
-
Bucket
Bucket(Collection<V> vertices) Creates a new bucket with allvertices
stored in it.- Parameters:
vertices
- vertices to store in this bucket.
-
Bucket
Bucket(V vertex) Creates a new Bucket with a singlevertex
in it.- Parameters:
vertex
- the vertex to store in this bucket.
-
-
Method Details
-
removeVertex
Removes thevertex
from this bucket.- Parameters:
vertex
- the vertex to remove.
-
removeSelf
void removeSelf()Removes this bucket from the data structure. -
insertBefore
Inserts this bucket in the data structure before thebucket
.- Parameters:
bucket
- the bucket, that will be the next to this bucket.
-
addVertex
Adds thevertex
to this bucket.- Parameters:
vertex
- the vertex to add.
-
poll
V poll()Retrieves one vertex from this bucket.- Returns:
- vertex, that was removed from this bucket, null if the bucket was empty.
-
isEmpty
boolean isEmpty()Checks whether this bucket is empty.- Returns:
- true if this bucket doesn't contain any elements, otherwise false.
-