skiplist - c
Skiplist's utilities are due to not very memory intensive, and changing parameters about the probability of a node to have a given number of levels will make then less memory intensive than btrees. Skip lists are simpler to implement, debug, and so forth. Skip lists also lend themselves well to concurrent multi-threaded access, especially update and deletion.