xvii · viii · mmxxvi

Projects

rust-skiplist

A skip list data structure for Rust

View on GitHub ↗
stars
111
forks
18
watchers
111
open issues
9
latest release
v1.1.0 · 14 Mar 2026
pull requests
6 open PRs

Recent commits

  • 3a5da4dchore: run all gates through mise tasksJP-Ellis · 3w ago
  • 8d6c17erefactor: satisfy new clippy restriction lintsJP-Ellis · 3w ago
  • d2f12b3chore: tune clippy lints and pin toml versionJP-Ellis · 3w ago
  • 448160cchore: add biome config using editorconfigJP-Ellis · 3w ago
  • e5c3c3cstyle: apply rumdl formattingJP-Ellis · 3w 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.