Package net.automatalib.common.smartcollection
This package contains efficient implementations for various collection data structures (especially linked lists and
priority queues), which have very insufficient implementation in the Java Collections Framework that makes it hard or
even impossible to exploit their efficiencies.
-
Interface Summary Interface Description ArrayWritable<T> Unified interface for (collection) classes that allow writing their contents to an array.CapacityManagement Control interface for collections supporting a capacity management, i.e., reserving space in advance in order to avoid repeated reallocations.ElementReference Marker interface for element reference.IntSeq AnIntSeq
is an abstract read-only view on a finite, random-access data-structure for primitive integer values.LinkedListEntry<E,T extends LinkedListEntry<E,T>> Basic interface for entries in a linked list.SmartCollection<E> An extended collection interface.SmartDeque<E> A double-ended queue (deque), allowing access, removal and insertion of elements both at the beginning and the end.SmartDynamicPriorityQueue<E> A priority queue interface.SmartGeneralPriorityQueue<E,K extends Comparable<K>> A generalized priority queue which allows storing arbitrary elements that don't have to be comparable, neither by their natural ordering nor by a providedComparator
.SmartPriorityQueue<E> Priority queue interface.SmartSequence<E> Sequence interface. -
Class Summary Class Description AbstractBasicLinkedListEntry<E,T extends AbstractBasicLinkedListEntry<E,T>> Abstract base class for entries in a linked list.AbstractLinkedList<E,T extends LinkedListEntry<E,T>> Abstract base class for linked lists.AbstractSmartCollection<E> This class eases the implementation of theSmartCollection
interface.ArrayStorage<T> A thin wrapper around a simpleObject[]
array.ArrayUtil Utility methods for arrays.BackedGeneralPriorityQueue<E,K extends Comparable<K>> ASmartGeneralPriorityQueue
implementation that is backed by aSmartDynamicPriorityQueue
.BackedGeneralPriorityQueue.Entry<E,K extends Comparable<K>> Note: this class has a natural ordering that is inconsistent with equals.BinaryHeap<E> APriorityQueue
implementation using a binary heap.DefaultLinkedList<E> A simple linked list implementation that allows storing arbitrary elements.DefaultLinkedListEntry<E> The default linked list entry.IntrusiveLinkedList<T extends LinkedListEntry<T,T>> An intrusive version of a linked list.ReflexiveMapView<T> An immutable, reflexiveMap
view for a given set of elements.ResizingArrayStorage<T> Class that provides a resizable array storage of a certain type.UnorderedCollection<E> This class implements a collection for storing objects in no particular order. -
Exception Summary Exception Description InvalidReferenceException Exception that is thrown if an invalidElementReference
is used.