Java Skip List
This is a skip list implementation written in Java. Also see https://crimsonglow.ca/~kjiwa/2011/06/skip-list.html.
Skip lists are a data structure that can be used in place of balanced trees. Skip lists use probabilistic balancing rather than strictly enforced balancing and as a result the algorithms for insertion and deletion in skip lists are much simpler and significantly faster than equivalent algorithms for balanced trees. (Pugh)