Package net.metanotion.util.skiplist
Class SkipList<K extends Comparable<? super K>,V>
java.lang.Object
net.metanotion.util.skiplist.SkipList<K,V>
- Direct Known Subclasses:
BSkipList
public class SkipList<K extends Comparable<? super K>,V> extends Object implements Flushable, Iterable<V>
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description void
addItem()
void
balance()
void
delItem()
SkipIterator<K,V>
find(K key)
void
flush()
int
generateColHeight()
V
get(K key)
SkipIterator<K,V>
iterator()
int
maxLevels()
void
print()
Deprecated.goes to System.outvoid
printSL()
Deprecated.goes to System.outvoid
put(K key, V val)
V
remove(K key)
int
size()
-
Field Details
-
Constructor Details
-
Method Details
-
flush
public void flush() -
size
public int size() -
addItem
public void addItem() -
delItem
public void delItem() -
maxLevels
public int maxLevels()- Returns:
- 4 since we don't track span count here any more - see override Fix if for some reason you want a huge in-memory skiplist.
-
generateColHeight
public int generateColHeight()- Returns:
- 0..maxLevels(), each successive one with probability 1 / P
-
put
-
remove
-
printSL
Deprecated.goes to System.outdumps all the skip levels -
print
Deprecated.goes to System.outdumps all the data -
get
-
iterator
- Specified by:
iterator
in interfaceIterable<K extends Comparable<? super K>>
-
find
- Returns:
- an iterator where nextKey() is the first one greater than or equal to 'key'
-
balance
public void balance()
-