It'd be interesting to see it compared to https://doc.rust-lang.org/std/collections/struct.BTreeSet.ht....
Their skiplist description is a little funny — typically a skiplist has one element per leaf node, and you should never need to move items between buckets. Also skiplists have logarithmic layers in the number of elements, so inserting and searching are always bounded by O(log n).