vi · ix · mmxxvi

Projects

rust-skiplist

A skip list data structure for Rust

View on GitHub ↗
stars
111
forks
18
watchers
111
open issues
7
latest release
v1.1.1 · 3 Sep 2026
pull requests
4 open PRs

Recent commits

  • aa83797fix: preserve container invariants when user code unwindsJP-Ellis · 3d ago

A skip list is a probabilistic data structure that provides O(log n) average search, insertion, and deletion. It hasthe same asymptotic complexity as a balanced binary search tree, but with simpler implementation and cache-friendly access patterns for sequential reads.

This crate provides SkipList<T> and OrderedSkipList<T>, both implementing the standard Rust collection traits (IntoIterator, FromIterator, Extend).

Quick Start

use skiplist::OrderedSkipList;

let mut list = OrderedSkipList::new();
list.insert(3);
list.insert(1);
list.insert(4);

assert_eq!(list.front(), Some(&1));
assert_eq!(list.len(), 3);

The crate is available on crates.io.