I
- input symbol typepublic class MapAlphabet<I> extends AbstractAlphabet<I>
List
for fast idx to symbol look-ups as well as a Map
for fast symbol to idx look-ups.Modifier and Type | Field and Description |
---|---|
protected Map<I,Integer> |
indexMap |
protected List<I> |
symbols |
modCount
Constructor and Description |
---|
MapAlphabet(Collection<? extends I> symbols) |
Modifier and Type | Method and Description |
---|---|
boolean |
containsSymbol(I symbol)
Checks whether the given symbol is part of the alphabet.
|
I |
getSymbol(int index)
Returns the symbol with the given index in this alphabet.
|
int |
getSymbolIndex(I symbol)
Returns the index of the given symbol in the alphabet.
|
int |
size()
The size of this container.
|
get
add, add, addAll, clear, equals, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, removeRange, set, subList
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
apply, applyAsInt, compare, translateFrom, writeToArray
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArray
comparing, comparing, comparingDouble, comparingInt, comparingLong, equals, naturalOrder, nullsFirst, nullsLast, reversed, reverseOrder, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
addAll, contains, containsAll, isEmpty, remove, removeAll, replaceAll, retainAll, sort, spliterator, toArray, toArray
public MapAlphabet(Collection<? extends I> symbols)
public int size()
ArrayWritable
size
in interface Collection<I>
size
in interface List<I>
size
in interface ArrayWritable<I>
size
in class AbstractCollection<I>
public I getSymbol(int index)
Alphabet
index
- the index of the requested symbol.public int getSymbolIndex(I symbol)
Alphabet
symbol
- the symbol whose index should be determinedpublic boolean containsSymbol(I symbol)
Alphabet
Caution: the default implementation is rather inefficient and should be overridden, if possible.
symbol
- the symbol to checktrue
iff the symbol is part of the alphabetCopyright © 2020. All rights reserved.