DStl:采用STL样式的各种数据结构实现

时间:2024-06-03 11:24:35
【文件属性】:

文件名称:DStl:采用STL样式的各种数据结构实现

文件大小:112KB

文件格式:ZIP

更新时间:2024-06-03 11:24:35

C++

大家应该已经看出来了,现在这个repo已经和数据结构没有什么必然的联系了。我们的目标是星辰大海stl。 一.容器 1.顺序容器 Deque和CircularQueue都是双向队列的实现,其中Deque符合stl对deque的规范,"push_front, push_back, emplace_front and emplace_back do not invalidate any references to elements of the deque.",这是Vector/vector/CircularQueue都不具备的能力。 2.关联容器 这四种平衡树是Map的四种实现,默认的模板参数是RBTree 迭代器支持+-,利用的是平衡树本来就支持但是stl偏偏没有的kth和rankof 然而即使每个节点多维护了一个size信息还是轻松干掉开O2的stl 链表/开放寻址的散列表,根据SFINA


【文件预览】:
DStl-master
----DataStructure()
--------Map.h(7KB)
--------TimSort.h(3KB)
--------vEBTree.h(5KB)
--------HashMap.h(8KB)
--------SkipList.h(4KB)
--------CircularQueue.h(10KB)
--------HashMap-OpenAddress.h(7KB)
--------Treap.h(4KB)
--------fc.h(612B)
--------BTree.h(10KB)
--------UInt.h(6KB)
--------Legacy()
--------LeftistTree.h(2KB)
--------Test()
--------Trie.h(4KB)
--------Algorithm.h(12KB)
--------TreeUtil.h(2KB)
--------PriorityQueue.h(1KB)
--------BITTree.h(2KB)
--------String.h(5KB)
--------BIT.h(1KB)
--------List.h(9KB)
--------BigInt.h(6KB)
--------PairingHeap.h(5KB)
--------Vector.h(4KB)
--------IntrusiveList.h(3KB)
--------FibHeap.h(3KB)
--------DynamicSegTree.h(3KB)
--------RBTree.h(9KB)
--------BitSet.h(4KB)
--------KDTree.h(3KB)
--------Deque.h(6KB)
--------PersistentArray.h(2KB)
--------Fun()
--------AVL.h(6KB)
--------ForwardList.h(5KB)
--------Util.h(2KB)
--------PersistentTreap.h(3KB)
--------MinMaxHeap.h(3KB)
--------Template()
--------HashMapUtil.h(2KB)
--------Splay.h(4KB)
----README.md(5KB)
----.gitignore(42B)

网友评论