Package ubic.gemma.core.datastructure
Class SparseRangeArrayList<T>
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<T>
-
- ubic.gemma.core.datastructure.SparseRangeArrayList<T>
-
- All Implemented Interfaces:
Iterable<T>
,Collection<T>
,List<T>
,SparseList<T>
public class SparseRangeArrayList<T> extends AbstractList<T> implements SparseList<T>
A sparse range array is a data structure that efficiently stores arrays of repeated elements by encoding their starting offsets.For example, a sequence of characters
AAAAABBBBCC
is stored asABC
with the following offsets0, 5, 9
.- Author:
- poirigui
- See Also:
SparseArrayList
-
-
Field Summary
-
Fields inherited from class java.util.AbstractList
modCount
-
-
Constructor Summary
Constructors Constructor Description SparseRangeArrayList()
Create an empty sparse range array.SparseRangeArrayList(Collection<T> collection)
SparseRangeArrayList(List<T> array, int[] offsets, int numberOfElements)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object o)
T
get(int i)
int
indexOf(Object o)
int
lastIndexOf(Object o)
int
size()
int
storageSize()
The number of elements actually stored.-
Methods inherited from class java.util.AbstractList
add, add, addAll, clear, hashCode, iterator, listIterator, listIterator, remove, removeRange, set, subList
-
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream
-
Methods inherited from interface java.util.List
add, add, addAll, addAll, clear, contains, containsAll, hashCode, isEmpty, iterator, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, sort, spliterator, subList, toArray, toArray
-
-
-
-
Constructor Detail
-
SparseRangeArrayList
public SparseRangeArrayList(Collection<T> collection)
-
SparseRangeArrayList
public SparseRangeArrayList(List<T> array, int[] offsets, int numberOfElements)
-
SparseRangeArrayList
public SparseRangeArrayList()
Create an empty sparse range array.
-
-
Method Detail
-
get
public T get(int i)
-
storageSize
public int storageSize()
Description copied from interface:SparseList
The number of elements actually stored.- Specified by:
storageSize
in interfaceSparseList<T>
-
size
public int size()
- Specified by:
size
in interfaceCollection<T>
- Specified by:
size
in interfaceList<T>
- Specified by:
size
in classAbstractCollection<T>
-
indexOf
public int indexOf(Object o)
-
lastIndexOf
public int lastIndexOf(Object o)
- Specified by:
lastIndexOf
in interfaceList<T>
- Overrides:
lastIndexOf
in classAbstractList<T>
-
equals
public boolean equals(Object o)
- Specified by:
equals
in interfaceCollection<T>
- Specified by:
equals
in interfaceList<T>
- Overrides:
equals
in classAbstractList<T>
-
-