GoDSGo 数据结构包
GoDS 是一个 Go 语言实现的各种数据结构的工具包,包括:
- Containers (Sets, Lists, Stacks, Maps, Trees),
- Sets (HashSet, TreeSet, LinkedHashSet),
- Lists (ArrayList, SinglyLinkedList, DoublyLinkedList),
- Stacks (LinkedListStack, ArrayStack),
- Maps (HashMap, TreeMap, HashBidiMap, TreeBidiMap, LinkedHashMap),
- Trees (RedBlackTree, AVLTree, BTree, BinaryHeap),
- Comparators,
- Iterators,
- …
示例代码:
package main
import (
"github.com/emirpasic/gods/lists/arraylist"
"github.com/emirpasic/gods/utils"
)
func main() {
list := arraylist.New()
list.Add("a") // ["a"]
list.Add("c", "b") // ["a","c","b"]
list.Sort(utils.StringComparator) // ["a","b","c"]
_, _ = list.Get(0) // "a",true
_, _ = list.Get(100) // nil,false
_ = list.Contains("a", "b", "c") // true
_ = list.Contains("a", "b", "c", "d") // false
list.Swap(0, 1) // ["b","a",c"]
list.Remove(2) // ["b","a"]
list.Remove(1) // ["b"]
list.Remove(0) // []
list.Remove(0) // [] (ignored)
_ = list.Empty() // true
_ = list.Size() // 0
list.Add("a") // ["a"]
list.Clear() // []
list.Insert(0, "b") // ["b"]
list.Insert(0, "a") // ["a","b"]
}
评论
mdds多维数据结构
Multi-DimensionalDataStructure(mdds)是一个C++类库,提供了一组不同的数据结构用于高效的存储和查询多为数据,支持不同的过滤查询。不同的数据结构是专门为不同的查询而优
mdds多维数据结构
0
libx1f4l2数据结构库
libx1f4l2是个数据结构库,是自我平衡BSTs和我自我平衡BST支持列表。BST(binarysearchtree)二进制搜索树包括AVL,红黑树,AA和RBST。BST支持列表是个通用列表,允
libx1f4l2数据结构库
0