https://github.com/o8vm/ods
Open Data Structures (in Rust)
https://github.com/o8vm/ods
open-data-structures rust
Last synced: 5 days ago
JSON representation
Open Data Structures (in Rust)
- Host: GitHub
- URL: https://github.com/o8vm/ods
- Owner: o8vm
- License: mit
- Created: 2020-04-09T07:15:58.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2020-07-05T15:11:27.000Z (over 4 years ago)
- Last Synced: 2025-02-14T20:40:54.038Z (7 days ago)
- Topics: open-data-structures, rust
- Language: Rust
- Size: 222 KB
- Stars: 350
- Watchers: 13
- Forks: 20
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Open Data Structures (in Rust)
[Open Data Structures](https://opendatastructures.org/) is a textbook and source list about data structures.
This is the Rust version of Open Data Structures. Only safe Rust.*Advice and pull requests are welcome!*
* chapter01 (Interface)
* [trait Queue](/chapter01/src/interface.rs#L1)
* [trait Stack](/chapter01/src/interface.rs#L6)
* [trait List](/chapter01/src/interface.rs#L11)
* [trait USet](/chapter01/src/interface.rs#L19)
* [trait SSet](/chapter01/src/interface.rs#L26)
* [trait Graph](/chapter01/src/interface.rs#L33)
* chapter02 (Array-Based Lists)
* [ArrayStack](/chapter02/src/arraystack.rs)
* [ArrayQueue](/chapter02/src/arrayqueue.rs)
* [ArrayDeque](/chapter02/src/arraydeque.rs)
* [BDeque](/chapter02/src/boundeddeque.rs)
* [DualArrayDeque](/chapter02/src/dualarraydeque.rs)
* [RootishArrayStack](/chapter02/src/rootisharraystack.rs)
* chapter03 (Linked Lists)
* [SLList](/chapter03/src/sllist.rs)
* [DLList](/chapter03/src/dllist.rs)
* [SEList](/chapter03/src/selist.rs)
* chapter04 (Skiplists)
* [SkiplistSSet](/chapter04/src/skiplistsset.rs)
* [SkiplistList](/chapter04/src/skiplistlist.rs)
* chapter05 (Hash Tables)
* [ChainedHashTable](/chapter05/src/chainedhashtable.rs)
* [LinearHashTable](/chapter05/src/linearhashtable.rs)
* chapter06 (Binary Trees)
* [BinaryTree](/chapter06/src/binarytree.rs)
* [BinarySearchTree](/chapter06/src/binarysearchtree.rs)
* chapter07 (Random Binary Search Trees)
* [Treap](/chapter07/src/treap.rs)
* chapter08 (Scapegoat Trees)
* [ScapegoatTree](/chapter08/src/scapegoattree.rs)
* chapter09 (Red-Black Trees)
* [RedBlackTree](/chapter09/src/redblacktree.rs)
* chapter10 (Heaps)
* [BinaryHeap](/chapter10/src/binaryheap.rs)
* [MeldableHeap](/chapter10/src/meldableheap.rs)
* chapter11 (Sorting Algorithms)
* [Merge-Sort](/chapter11/src/mergesort.rs)
* [Quicksort](/chapter11/src/quicksort.rs)
* [Heap-sort](/chapter11/src/heapsort.rs), using [BinaryHeap](/chapter10/src/binaryheap.rs#L87)
* [Counting Sort](/chapter11/src/countingsort.rs)
* [Radix-Sort](/chapter11/src/radixsort.rs)
* chapter12 (Graphs)
* [AdjacencyMatrix](/chapter12/src/adjacencymatrix.rs)
* [AdjacencyLists](/chapter12/src/adjacencylists.rs)
* [Breadth-First Search](/chapter12/src/bfs.rs)
* [Depth-First Search](/chapter12/src/dfs.rs)
* chapter13 (Data Structures for Integers)
* [BinaryTrie](/chapter13/src/binarytrie.rs)
* [XFastTrie](/chapter13/src/xfasttrie.rs)
* [YFastTrie](/chapter13/src/yfasttrie.rs)
* chapter14 (External Memory Searching)
* [BTree](/chapter14/src/btree.rs)