/ods-go

open data structures in go 1.18

Primary LanguageGo

ods-go

Open data structures implemented in go-1.18 with generics.

Purely for academic purposes; don't use this in production (obviously)

things


Resizable Arrays:

  • ArrayStack
  • FastArrayStack (needs memcpy no thanks...)
  • ArrayQueue
  • ArrayDeque
  • DualArrayDeque
  • RootishArrayStack

Linked Lists:

  • SList
  • DList
  • SEList

SkipLists:

  • SkipList
  • SkipListList

Hash Tables:

  • ChainedHashTable
  • LinearHashTable

Trees:

  • BinaryTree
  • BinarySearchTree
  • Treap
  • ScapegoatTree
  • RedBlackTree

Heaps:

  • BinaryHeap
  • MeldableHeap

Sorting Algos:

  • mergesort
  • quicksort
  • heapsort

Graphs:

  • AdjacencyMatrix
  • AdjacencyList