3 ms·
I did a brief survey before deciding to go with skip lists, and found them to be easier to grasp and reason about. (e.g. there is no need to balance trees; a sk
by airesQ 10y ago
I did a brief survey before deciding to go with skip lists, and found them to be easier to grasp and reason about.
(e.g. there is no need to balance trees; a skip list is very similar to a linked list, and linked lists are very simple).
I remember somebody saying that "in a sane world skip lists would always have been discovered before red-black trees".
This historical accident (skip lists were only discovered 1989; while rb-trees date back to the 1970s) is probably the reason why skip list use is not more widespread, and seen as somewhat exotic at times.
(AVL and Splay-trees also predate skip lists.)
- kazinator 10y agoSkip lists are just B+ trees in disguise. Look at the basic diagram here. https://en.wikipedia.org/wiki/B%2B_tree https://en.wikipedia.org/wiki/B%2B_tree See how there is an "express lane" containing just (3 5), and the lower layer contains the entire (1 2 3 4 5 6 7) list? The main difference is that it's a combination of arrays and links rather than parallel lists.