Repository navigation
Home
gcx edited this page Nov 30, 2020
·
10 revisions
-
Linear Collection:Extension to the go standard library about the collection. Mainly inspired by the most common utils in java.util. This section only covers linear data structures. Note that all the collections in this project do not allow
nilelement.-
ArrayList: Resizable-array implementation of the
Listinterface, based on the basic type ofslice. This collection implements all list operations like append, insert, remove, get and set, and is much similiar tojava.util.ArrayList. -
LinkedList: Doubly-linked list implementation of the
List,Stack,QueueandDequeinterfaces. This collection implements all double-linked list operations like addFirst, removeFirst, addLast and removeLast, and is much similiar tojava.util.LinkedList. -
PriorityQueue: An unbounded priority queue based on a priority heap. The elements of the priority queue are ordered according to the specific parameter '
precede'. This collection implements all queue operations like add and poll, and is much similiar tojava.util.PriorityQueue. -
ArrayDeque: Resizable-array implementation of the
Dequeinterface based on loop array, which may be faster thanLinkedListwhen used as a queue or stack. This collection implements all deque operations like add and remove, and is much similiar tojava.util.ArrayDeque. -
HashSet: Implementation the
Setinterface backed by a hash table(actually the basic type ofmap). This collection implements all set operations like add and remove, and is much similiar tojava.util.HashSet. -
SortedSet: Implementation the
SortedSetinterface backed by a sorted map.
-
ArrayList: Resizable-array implementation of the
-
-
SkipListMap: A scalable
SortedMapimplementation based on skiplist. The elements are ordered according to the specific parameter 'precede'. This collection implements all operations ofSortedMaplike add and remove.
-
SkipListMap: A scalable
-
Limiting
- PermitLimiter
- LeakyLimiter
- SlidingWindow
-
Caching
- LRU
- LRU2
- LFU