{"id":13484840,"url":"https://github.com/o8vm/ods","last_synced_at":"2025-04-09T12:09:15.330Z","repository":{"id":41839106,"uuid":"254298961","full_name":"o8vm/ods","owner":"o8vm","description":"Open Data Structures (in Rust)","archived":false,"fork":false,"pushed_at":"2020-07-05T15:11:27.000Z","size":227,"stargazers_count":352,"open_issues_count":0,"forks_count":20,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-04-02T11:06:02.603Z","etag":null,"topics":["open-data-structures","rust"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/o8vm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-04-09T07:15:58.000Z","updated_at":"2025-03-25T07:51:29.000Z","dependencies_parsed_at":"2022-08-31T17:50:23.733Z","dependency_job_id":null,"html_url":"https://github.com/o8vm/ods","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/o8vm%2Fods","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/o8vm%2Fods/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/o8vm%2Fods/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/o8vm%2Fods/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/o8vm","download_url":"https://codeload.github.com/o8vm/ods/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248036067,"owners_count":21037092,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["open-data-structures","rust"],"created_at":"2024-07-31T17:01:35.781Z","updated_at":"2025-04-09T12:09:15.313Z","avatar_url":"https://github.com/o8vm.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# Open Data Structures (in Rust)\n\n[Open Data Structures](https://opendatastructures.org/) is a textbook and source list about data structures.  \nThis is the Rust version of Open Data Structures. Only safe Rust.\n\n*Advice and pull requests are welcome!*\n\n* chapter01 (Interface)\n    * [trait Queue](/chapter01/src/interface.rs#L1)\n    * [trait Stack](/chapter01/src/interface.rs#L6)\n    * [trait List](/chapter01/src/interface.rs#L11)\n    * [trait USet](/chapter01/src/interface.rs#L19)\n    * [trait SSet](/chapter01/src/interface.rs#L26)\n    * [trait Graph](/chapter01/src/interface.rs#L33)\n* chapter02 (Array-Based Lists)\n    * [ArrayStack](/chapter02/src/arraystack.rs)\n    * [ArrayQueue](/chapter02/src/arrayqueue.rs)\n    * [ArrayDeque](/chapter02/src/arraydeque.rs)\n    * [BDeque](/chapter02/src/boundeddeque.rs)\n    * [DualArrayDeque](/chapter02/src/dualarraydeque.rs)\n    * [RootishArrayStack](/chapter02/src/rootisharraystack.rs)\n* chapter03 (Linked Lists)\n    * [SLList](/chapter03/src/sllist.rs)\n    * [DLList](/chapter03/src/dllist.rs)\n    * [SEList](/chapter03/src/selist.rs)\n* chapter04 (Skiplists)\n    * [SkiplistSSet](/chapter04/src/skiplistsset.rs)\n    * [SkiplistList](/chapter04/src/skiplistlist.rs)\n* chapter05 (Hash Tables)\n    * [ChainedHashTable](/chapter05/src/chainedhashtable.rs)\n    * [LinearHashTable](/chapter05/src/linearhashtable.rs)\n* chapter06 (Binary Trees)\n    * [BinaryTree](/chapter06/src/binarytree.rs)\n    * [BinarySearchTree](/chapter06/src/binarysearchtree.rs)\n* chapter07 (Random Binary Search Trees)\n    * [Treap](/chapter07/src/treap.rs)\n* chapter08 (Scapegoat Trees)\n    * [ScapegoatTree](/chapter08/src/scapegoattree.rs)\n* chapter09 (Red-Black Trees)\n    * [RedBlackTree](/chapter09/src/redblacktree.rs)\n* chapter10 (Heaps)\n    * [BinaryHeap](/chapter10/src/binaryheap.rs)\n    * [MeldableHeap](/chapter10/src/meldableheap.rs)\n* chapter11 (Sorting Algorithms)\n    * [Merge-Sort](/chapter11/src/mergesort.rs)\n    * [Quicksort](/chapter11/src/quicksort.rs)\n    * [Heap-sort](/chapter11/src/heapsort.rs), using [BinaryHeap](/chapter10/src/binaryheap.rs#L87)\n    * [Counting Sort](/chapter11/src/countingsort.rs)\n    * [Radix-Sort](/chapter11/src/radixsort.rs)\n* chapter12 (Graphs)\n    * [AdjacencyMatrix](/chapter12/src/adjacencymatrix.rs)\n    * [AdjacencyLists](/chapter12/src/adjacencylists.rs)\n    * [Breadth-First Search](/chapter12/src/bfs.rs)\n    * [Depth-First Search](/chapter12/src/dfs.rs)\n* chapter13 (Data Structures for Integers)\n    * [BinaryTrie](/chapter13/src/binarytrie.rs)\n    * [XFastTrie](/chapter13/src/xfasttrie.rs)\n    * [YFastTrie](/chapter13/src/yfasttrie.rs)\n* chapter14 (External Memory Searching)\n    * [BTree](/chapter14/src/btree.rs)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fo8vm%2Fods","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fo8vm%2Fods","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fo8vm%2Fods/lists"}