data-structure-typed 1.32.0 → 1.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (348) hide show
  1. package/.github/workflows/ci.yml +12 -1
  2. package/.prettierrc.js +1 -1
  3. package/CHANGELOG.md +1 -1
  4. package/README.md +20 -3
  5. package/coverage/clover.xml +717 -717
  6. package/coverage/coverage-final.json +21 -21
  7. package/coverage/coverage-summary.json +68 -0
  8. package/coverage/lcov-report/index.html +1 -1
  9. package/coverage/lcov-report/src/data-structures/binary-tree/aa-tree.ts.html +1 -1
  10. package/coverage/lcov-report/src/data-structures/binary-tree/abstract-binary-tree.ts.html +19 -7
  11. package/coverage/lcov-report/src/data-structures/binary-tree/avl-tree.ts.html +5 -5
  12. package/coverage/lcov-report/src/data-structures/binary-tree/b-tree.ts.html +1 -1
  13. package/coverage/lcov-report/src/data-structures/binary-tree/binary-indexed-tree.ts.html +1 -1
  14. package/coverage/lcov-report/src/data-structures/binary-tree/binary-tree.ts.html +4 -4
  15. package/coverage/lcov-report/src/data-structures/binary-tree/bst.ts.html +7 -25
  16. package/coverage/lcov-report/src/data-structures/binary-tree/index.html +1 -1
  17. package/coverage/lcov-report/src/data-structures/binary-tree/index.ts.html +1 -1
  18. package/coverage/lcov-report/src/data-structures/binary-tree/rb-tree.ts.html +4 -4
  19. package/coverage/lcov-report/src/data-structures/binary-tree/segment-tree.ts.html +2 -2
  20. package/coverage/lcov-report/src/data-structures/binary-tree/splay-tree.ts.html +1 -1
  21. package/coverage/lcov-report/src/data-structures/binary-tree/tree-multiset.ts.html +9 -9
  22. package/coverage/lcov-report/src/data-structures/binary-tree/two-three-tree.ts.html +1 -1
  23. package/coverage/lcov-report/src/data-structures/graph/abstract-graph.ts.html +17 -17
  24. package/coverage/lcov-report/src/data-structures/graph/directed-graph.ts.html +5 -5
  25. package/coverage/lcov-report/src/data-structures/graph/index.html +1 -1
  26. package/coverage/lcov-report/src/data-structures/graph/index.ts.html +1 -1
  27. package/coverage/lcov-report/src/data-structures/graph/map-graph.ts.html +3 -3
  28. package/coverage/lcov-report/src/data-structures/graph/undirected-graph.ts.html +5 -5
  29. package/coverage/lcov-report/src/data-structures/hash/coordinate-map.ts.html +1 -1
  30. package/coverage/lcov-report/src/data-structures/hash/coordinate-set.ts.html +1 -1
  31. package/coverage/lcov-report/src/data-structures/hash/hash-table.ts.html +1 -1
  32. package/coverage/lcov-report/src/data-structures/hash/index.html +1 -1
  33. package/coverage/lcov-report/src/data-structures/hash/index.ts.html +1 -1
  34. package/coverage/lcov-report/src/data-structures/hash/pair.ts.html +1 -1
  35. package/coverage/lcov-report/src/data-structures/hash/tree-map.ts.html +1 -1
  36. package/coverage/lcov-report/src/data-structures/hash/tree-set.ts.html +1 -1
  37. package/coverage/lcov-report/src/data-structures/heap/heap.ts.html +4 -4
  38. package/coverage/lcov-report/src/data-structures/heap/index.html +1 -1
  39. package/coverage/lcov-report/src/data-structures/heap/index.ts.html +1 -1
  40. package/coverage/lcov-report/src/data-structures/heap/max-heap.ts.html +4 -4
  41. package/coverage/lcov-report/src/data-structures/heap/min-heap.ts.html +4 -4
  42. package/coverage/lcov-report/src/data-structures/index.html +1 -1
  43. package/coverage/lcov-report/src/data-structures/index.ts.html +1 -1
  44. package/coverage/lcov-report/src/data-structures/linked-list/doubly-linked-list.ts.html +1 -1
  45. package/coverage/lcov-report/src/data-structures/linked-list/index.html +1 -1
  46. package/coverage/lcov-report/src/data-structures/linked-list/index.ts.html +1 -1
  47. package/coverage/lcov-report/src/data-structures/linked-list/singly-linked-list.ts.html +1 -1
  48. package/coverage/lcov-report/src/data-structures/linked-list/skip-linked-list.ts.html +1 -1
  49. package/coverage/lcov-report/src/data-structures/matrix/index.html +1 -1
  50. package/coverage/lcov-report/src/data-structures/matrix/index.ts.html +1 -1
  51. package/coverage/lcov-report/src/data-structures/matrix/matrix.ts.html +3 -3
  52. package/coverage/lcov-report/src/data-structures/matrix/matrix2d.ts.html +1 -1
  53. package/coverage/lcov-report/src/data-structures/matrix/navigator.ts.html +4 -4
  54. package/coverage/lcov-report/src/data-structures/matrix/vector2d.ts.html +1 -1
  55. package/coverage/lcov-report/src/data-structures/priority-queue/index.html +1 -1
  56. package/coverage/lcov-report/src/data-structures/priority-queue/index.ts.html +1 -1
  57. package/coverage/lcov-report/src/data-structures/priority-queue/max-priority-queue.ts.html +6 -6
  58. package/coverage/lcov-report/src/data-structures/priority-queue/min-priority-queue.ts.html +3 -3
  59. package/coverage/lcov-report/src/data-structures/priority-queue/priority-queue.ts.html +32 -32
  60. package/coverage/lcov-report/src/data-structures/queue/deque.ts.html +5 -5
  61. package/coverage/lcov-report/src/data-structures/queue/index.html +1 -1
  62. package/coverage/lcov-report/src/data-structures/queue/index.ts.html +1 -1
  63. package/coverage/lcov-report/src/data-structures/queue/queue.ts.html +2 -2
  64. package/coverage/lcov-report/src/data-structures/stack/index.html +1 -1
  65. package/coverage/lcov-report/src/data-structures/stack/index.ts.html +1 -1
  66. package/coverage/lcov-report/src/data-structures/stack/stack.ts.html +1 -1
  67. package/coverage/lcov-report/src/data-structures/tree/index.html +1 -1
  68. package/coverage/lcov-report/src/data-structures/tree/index.ts.html +1 -1
  69. package/coverage/lcov-report/src/data-structures/tree/tree.ts.html +2 -2
  70. package/coverage/lcov-report/src/data-structures/trie/index.html +1 -1
  71. package/coverage/lcov-report/src/data-structures/trie/index.ts.html +1 -1
  72. package/coverage/lcov-report/src/data-structures/trie/trie.ts.html +1 -1
  73. package/coverage/lcov-report/src/index.html +1 -1
  74. package/coverage/lcov-report/src/index.ts.html +1 -1
  75. package/coverage/lcov-report/src/interfaces/index.html +1 -1
  76. package/coverage/lcov-report/src/interfaces/index.ts.html +1 -1
  77. package/coverage/lcov-report/src/types/data-structures/abstract-binary-tree.ts.html +1 -1
  78. package/coverage/lcov-report/src/types/data-structures/bst.ts.html +1 -1
  79. package/coverage/lcov-report/src/types/data-structures/directed-graph.ts.html +1 -1
  80. package/coverage/lcov-report/src/types/data-structures/index.html +1 -1
  81. package/coverage/lcov-report/src/types/data-structures/index.ts.html +1 -1
  82. package/coverage/lcov-report/src/types/data-structures/rb-tree.ts.html +1 -1
  83. package/coverage/lcov-report/src/types/index.html +1 -1
  84. package/coverage/lcov-report/src/types/index.ts.html +1 -1
  85. package/coverage/lcov-report/src/types/utils/index.html +1 -1
  86. package/coverage/lcov-report/src/types/utils/index.ts.html +1 -1
  87. package/coverage/lcov-report/src/utils/index.html +1 -1
  88. package/coverage/lcov-report/src/utils/index.ts.html +1 -1
  89. package/coverage/lcov-report/src/utils/utils.ts.html +4 -4
  90. package/coverage/lcov-report/test/utils/index.html +1 -1
  91. package/coverage/lcov-report/test/utils/index.ts.html +1 -1
  92. package/coverage/lcov-report/test/utils/magnitude.ts.html +1 -1
  93. package/coverage/lcov-report/test/utils/number.ts.html +1 -1
  94. package/coverage/lcov.info +1329 -1329
  95. package/dist/data-structures/binary-tree/abstract-binary-tree.js.map +1 -1
  96. package/dist/data-structures/binary-tree/avl-tree.js.map +1 -1
  97. package/dist/data-structures/binary-tree/binary-tree.js.map +1 -1
  98. package/dist/data-structures/binary-tree/bst.js.map +1 -1
  99. package/dist/data-structures/binary-tree/rb-tree.js.map +1 -1
  100. package/dist/data-structures/binary-tree/tree-multiset.js.map +1 -1
  101. package/dist/data-structures/graph/abstract-graph.js.map +1 -1
  102. package/dist/data-structures/graph/directed-graph.js.map +1 -1
  103. package/dist/data-structures/graph/map-graph.js.map +1 -1
  104. package/dist/data-structures/graph/undirected-graph.js.map +1 -1
  105. package/dist/data-structures/heap/heap.js.map +1 -1
  106. package/dist/data-structures/heap/max-heap.js.map +1 -1
  107. package/dist/data-structures/heap/min-heap.js.map +1 -1
  108. package/dist/data-structures/matrix/matrix.js.map +1 -1
  109. package/dist/data-structures/matrix/navigator.js.map +1 -1
  110. package/dist/data-structures/priority-queue/max-priority-queue.js.map +1 -1
  111. package/dist/data-structures/priority-queue/min-priority-queue.js.map +1 -1
  112. package/dist/data-structures/priority-queue/priority-queue.js.map +1 -1
  113. package/dist/data-structures/queue/deque.js.map +1 -1
  114. package/dist/data-structures/queue/queue.js.map +1 -1
  115. package/dist/data-structures/tree/tree.js.map +1 -1
  116. package/dist/utils/utils.js.map +1 -1
  117. package/docs/classes/AVLTree.html +85 -85
  118. package/docs/classes/AVLTreeNode.html +15 -15
  119. package/docs/classes/AaTree.html +1 -1
  120. package/docs/classes/AbstractBinaryTree.html +78 -78
  121. package/docs/classes/AbstractBinaryTreeNode.html +21 -21
  122. package/docs/classes/AbstractEdge.html +11 -11
  123. package/docs/classes/AbstractGraph.html +36 -36
  124. package/docs/classes/AbstractVertex.html +8 -8
  125. package/docs/classes/ArrayDeque.html +14 -14
  126. package/docs/classes/BST.html +78 -78
  127. package/docs/classes/BSTNode.html +15 -15
  128. package/docs/classes/BTree.html +1 -1
  129. package/docs/classes/BinaryIndexedTree.html +9 -9
  130. package/docs/classes/BinaryTree.html +71 -71
  131. package/docs/classes/BinaryTreeNode.html +15 -15
  132. package/docs/classes/Character.html +4 -4
  133. package/docs/classes/CoordinateMap.html +9 -9
  134. package/docs/classes/CoordinateSet.html +8 -8
  135. package/docs/classes/Deque.html +34 -34
  136. package/docs/classes/DirectedEdge.html +15 -15
  137. package/docs/classes/DirectedGraph.html +52 -52
  138. package/docs/classes/DirectedVertex.html +6 -6
  139. package/docs/classes/DoublyLinkedList.html +37 -37
  140. package/docs/classes/DoublyLinkedListNode.html +11 -11
  141. package/docs/classes/HashTable.html +1 -1
  142. package/docs/classes/Heap.html +26 -26
  143. package/docs/classes/HeapItem.html +8 -8
  144. package/docs/classes/LinkedListQueue.html +35 -35
  145. package/docs/classes/MapEdge.html +13 -13
  146. package/docs/classes/MapGraph.html +56 -56
  147. package/docs/classes/MapVertex.html +12 -12
  148. package/docs/classes/Matrix2D.html +16 -16
  149. package/docs/classes/MatrixNTI2D.html +4 -4
  150. package/docs/classes/MaxHeap.html +26 -26
  151. package/docs/classes/MaxPriorityQueue.html +34 -34
  152. package/docs/classes/MinHeap.html +26 -26
  153. package/docs/classes/MinPriorityQueue.html +34 -34
  154. package/docs/classes/Navigator.html +10 -10
  155. package/docs/classes/ObjectDeque.html +25 -25
  156. package/docs/classes/Pair.html +1 -1
  157. package/docs/classes/PriorityQueue.html +32 -32
  158. package/docs/classes/Queue.html +22 -22
  159. package/docs/classes/RBTree.html +78 -78
  160. package/docs/classes/RBTreeNode.html +18 -18
  161. package/docs/classes/SegmentTree.html +17 -17
  162. package/docs/classes/SegmentTreeNode.html +20 -20
  163. package/docs/classes/SinglyLinkedList.html +35 -35
  164. package/docs/classes/SinglyLinkedListNode.html +8 -8
  165. package/docs/classes/SkipLinkedList.html +1 -1
  166. package/docs/classes/SplayTree.html +1 -1
  167. package/docs/classes/Stack.html +12 -12
  168. package/docs/classes/TreeMap.html +1 -1
  169. package/docs/classes/TreeMultiset.html +99 -99
  170. package/docs/classes/TreeMultisetNode.html +18 -18
  171. package/docs/classes/TreeNode.html +13 -13
  172. package/docs/classes/TreeSet.html +1 -1
  173. package/docs/classes/Trie.html +13 -13
  174. package/docs/classes/TrieNode.html +11 -11
  175. package/docs/classes/TwoThreeTree.html +1 -1
  176. package/docs/classes/UndirectedEdge.html +12 -12
  177. package/docs/classes/UndirectedGraph.html +40 -40
  178. package/docs/classes/UndirectedVertex.html +6 -6
  179. package/docs/classes/Vector2D.html +28 -28
  180. package/docs/enums/CP.html +4 -4
  181. package/docs/enums/FamilyPosition.html +8 -8
  182. package/docs/enums/LoopType.html +3 -3
  183. package/docs/enums/RBColor.html +3 -3
  184. package/docs/enums/TopologicalProperty.html +4 -4
  185. package/docs/functions/arrayRemove.html +1 -1
  186. package/docs/functions/isThunk.html +1 -1
  187. package/docs/functions/toThunk.html +1 -1
  188. package/docs/functions/trampoline.html +1 -1
  189. package/docs/functions/trampolineAsync.html +1 -1
  190. package/docs/functions/uuidV4.html +1 -1
  191. package/docs/index.html +11 -12
  192. package/docs/interfaces/IAVLTree.html +77 -77
  193. package/docs/interfaces/IAbstractBinaryTree.html +72 -72
  194. package/docs/interfaces/IAbstractBinaryTreeNode.html +14 -14
  195. package/docs/interfaces/IAbstractGraph.html +15 -15
  196. package/docs/interfaces/IBST.html +77 -77
  197. package/docs/interfaces/IDirectedGraph.html +23 -23
  198. package/docs/interfaces/IRBTree.html +77 -77
  199. package/docs/interfaces/IUNDirectedGraph.html +16 -16
  200. package/docs/types/AVLTreeNodeNested.html +1 -1
  201. package/docs/types/AVLTreeOptions.html +1 -1
  202. package/docs/types/AbstractBinaryTreeNodeNested.html +1 -1
  203. package/docs/types/AbstractBinaryTreeNodeProperties.html +1 -1
  204. package/docs/types/AbstractBinaryTreeNodeProperty.html +1 -1
  205. package/docs/types/AbstractBinaryTreeOptions.html +1 -1
  206. package/docs/types/BSTComparator.html +1 -1
  207. package/docs/types/BSTNodeNested.html +1 -1
  208. package/docs/types/BSTOptions.html +1 -1
  209. package/docs/types/BinaryTreeDeletedResult.html +1 -1
  210. package/docs/types/BinaryTreeNodeId.html +1 -1
  211. package/docs/types/BinaryTreeNodeNested.html +1 -1
  212. package/docs/types/BinaryTreeNodePropertyName.html +1 -1
  213. package/docs/types/BinaryTreeOptions.html +1 -1
  214. package/docs/types/DFSOrderPattern.html +1 -1
  215. package/docs/types/DijkstraResult.html +1 -1
  216. package/docs/types/Direction.html +1 -1
  217. package/docs/types/DummyAny.html +1 -1
  218. package/docs/types/EdgeId.html +1 -1
  219. package/docs/types/HeapOptions.html +1 -1
  220. package/docs/types/IAVLTreeNode.html +1 -1
  221. package/docs/types/IBSTNode.html +1 -1
  222. package/docs/types/IBinaryTree.html +1 -1
  223. package/docs/types/IBinaryTreeNode.html +1 -1
  224. package/docs/types/IRBTreeNode.html +1 -1
  225. package/docs/types/ITreeMultiset.html +1 -1
  226. package/docs/types/ITreeMultisetNode.html +1 -1
  227. package/docs/types/KeyValueObject.html +1 -1
  228. package/docs/types/KeyValueObjectWithId.html +1 -1
  229. package/docs/types/MapGraphCoordinate.html +1 -1
  230. package/docs/types/NavigatorParams.html +1 -1
  231. package/docs/types/NodeOrPropertyName.html +1 -1
  232. package/docs/types/NonNumberNonObjectButDefined.html +1 -1
  233. package/docs/types/ObjectWithNonNumberId.html +1 -1
  234. package/docs/types/ObjectWithNumberId.html +1 -1
  235. package/docs/types/ObjectWithoutId.html +1 -1
  236. package/docs/types/PriorityQueueComparator.html +1 -1
  237. package/docs/types/PriorityQueueDFSOrderPattern.html +1 -1
  238. package/docs/types/PriorityQueueOptions.html +1 -1
  239. package/docs/types/RBTreeNodeNested.html +1 -1
  240. package/docs/types/RBTreeOptions.html +1 -1
  241. package/docs/types/RestrictValById.html +1 -1
  242. package/docs/types/SegmentTreeNodeVal.html +1 -1
  243. package/docs/types/SpecifyOptional.html +1 -1
  244. package/docs/types/Thunk.html +1 -1
  245. package/docs/types/ToThunkFn.html +1 -1
  246. package/docs/types/TopologicalStatus.html +1 -1
  247. package/docs/types/TreeMultisetNodeNested.html +1 -1
  248. package/docs/types/TreeMultisetOptions.html +1 -1
  249. package/docs/types/TrlAsyncFn.html +1 -1
  250. package/docs/types/TrlFn.html +1 -1
  251. package/docs/types/Turning.html +1 -1
  252. package/docs/types/VertexId.html +1 -1
  253. package/docs/variables/THUNK_SYMBOL.html +1 -1
  254. package/jest.config.js +1 -0
  255. package/package.json +18 -6
  256. package/src/data-structures/binary-tree/aa-tree.ts +1 -0
  257. package/src/data-structures/binary-tree/abstract-binary-tree.ts +1631 -0
  258. package/src/data-structures/binary-tree/avl-tree.ts +310 -0
  259. package/src/data-structures/binary-tree/b-tree.ts +1 -0
  260. package/src/data-structures/binary-tree/binary-indexed-tree.ts +76 -0
  261. package/src/data-structures/binary-tree/binary-tree.ts +47 -0
  262. package/src/data-structures/binary-tree/bst.ts +537 -0
  263. package/src/data-structures/binary-tree/index.ts +12 -0
  264. package/src/data-structures/binary-tree/rb-tree.ts +101 -0
  265. package/src/data-structures/binary-tree/segment-tree.ts +242 -0
  266. package/src/data-structures/binary-tree/splay-tree.ts +1 -0
  267. package/src/data-structures/binary-tree/tree-multiset.ts +700 -0
  268. package/src/data-structures/binary-tree/two-three-tree.ts +1 -0
  269. package/src/data-structures/diagrams/README.md +5 -0
  270. package/src/data-structures/graph/abstract-graph.ts +1040 -0
  271. package/src/data-structures/graph/directed-graph.ts +470 -0
  272. package/src/data-structures/graph/index.ts +4 -0
  273. package/src/data-structures/graph/map-graph.ts +129 -0
  274. package/src/data-structures/graph/undirected-graph.ts +274 -0
  275. package/src/data-structures/hash/coordinate-map.ts +67 -0
  276. package/src/data-structures/hash/coordinate-set.ts +56 -0
  277. package/src/data-structures/hash/hash-table.ts +1 -0
  278. package/src/data-structures/hash/index.ts +6 -0
  279. package/src/data-structures/hash/pair.ts +1 -0
  280. package/src/data-structures/hash/tree-map.ts +1 -0
  281. package/src/data-structures/hash/tree-set.ts +1 -0
  282. package/src/data-structures/heap/heap.ts +212 -0
  283. package/src/data-structures/heap/index.ts +3 -0
  284. package/src/data-structures/heap/max-heap.ts +31 -0
  285. package/src/data-structures/heap/min-heap.ts +32 -0
  286. package/src/data-structures/index.ts +11 -0
  287. package/src/data-structures/linked-list/doubly-linked-list.ts +573 -0
  288. package/src/data-structures/linked-list/index.ts +3 -0
  289. package/src/data-structures/linked-list/singly-linked-list.ts +501 -0
  290. package/src/data-structures/linked-list/skip-linked-list.ts +1 -0
  291. package/src/data-structures/matrix/index.ts +4 -0
  292. package/src/data-structures/matrix/matrix.ts +27 -0
  293. package/src/data-structures/matrix/matrix2d.ts +212 -0
  294. package/src/data-structures/matrix/navigator.ts +121 -0
  295. package/src/data-structures/matrix/vector2d.ts +316 -0
  296. package/src/data-structures/priority-queue/index.ts +3 -0
  297. package/src/data-structures/priority-queue/max-priority-queue.ts +56 -0
  298. package/src/data-structures/priority-queue/min-priority-queue.ts +57 -0
  299. package/src/data-structures/priority-queue/priority-queue.ts +359 -0
  300. package/src/data-structures/queue/deque.ts +297 -0
  301. package/src/data-structures/queue/index.ts +2 -0
  302. package/src/data-structures/queue/queue.ts +191 -0
  303. package/src/data-structures/stack/index.ts +1 -0
  304. package/src/data-structures/stack/stack.ts +98 -0
  305. package/src/data-structures/tree/index.ts +1 -0
  306. package/src/data-structures/tree/tree.ts +69 -0
  307. package/src/data-structures/trie/index.ts +1 -0
  308. package/src/data-structures/trie/trie.ts +225 -0
  309. package/src/index.ts +4 -0
  310. package/src/interfaces/abstract-binary-tree.ts +191 -0
  311. package/src/interfaces/abstract-graph.ts +31 -0
  312. package/src/interfaces/avl-tree.ts +25 -0
  313. package/src/interfaces/binary-tree.ts +6 -0
  314. package/src/interfaces/bst.ts +31 -0
  315. package/src/interfaces/directed-graph.ts +20 -0
  316. package/src/interfaces/doubly-linked-list.ts +1 -0
  317. package/src/interfaces/heap.ts +1 -0
  318. package/src/interfaces/index.ts +15 -0
  319. package/src/interfaces/navigator.ts +1 -0
  320. package/src/interfaces/priority-queue.ts +1 -0
  321. package/src/interfaces/rb-tree.ts +9 -0
  322. package/src/interfaces/segment-tree.ts +1 -0
  323. package/src/interfaces/singly-linked-list.ts +1 -0
  324. package/src/interfaces/tree-multiset.ts +7 -0
  325. package/src/interfaces/undirected-graph.ts +6 -0
  326. package/src/types/data-structures/abstract-binary-tree.ts +50 -0
  327. package/src/types/data-structures/abstract-graph.ts +11 -0
  328. package/src/types/data-structures/avl-tree.ts +5 -0
  329. package/src/types/data-structures/binary-tree.ts +5 -0
  330. package/src/types/data-structures/bst.ts +13 -0
  331. package/src/types/data-structures/directed-graph.ts +8 -0
  332. package/src/types/data-structures/doubly-linked-list.ts +1 -0
  333. package/src/types/data-structures/heap.ts +5 -0
  334. package/src/types/data-structures/index.ts +15 -0
  335. package/src/types/data-structures/map-graph.ts +1 -0
  336. package/src/types/data-structures/navigator.ts +13 -0
  337. package/src/types/data-structures/priority-queue.ts +9 -0
  338. package/src/types/data-structures/rb-tree.ts +8 -0
  339. package/src/types/data-structures/segment-tree.ts +1 -0
  340. package/src/types/data-structures/singly-linked-list.ts +1 -0
  341. package/src/types/data-structures/tree-multiset.ts +6 -0
  342. package/src/types/helpers.ts +1 -0
  343. package/src/types/index.ts +3 -0
  344. package/src/types/utils/index.ts +2 -0
  345. package/src/types/utils/utils.ts +6 -0
  346. package/src/types/utils/validate-type.ts +35 -0
  347. package/src/utils/index.ts +1 -0
  348. package/src/utils/utils.ts +79 -0
@@ -17,7 +17,7 @@
17
17
  <h1>Type alias ObjectWithoutId</h1></div>
18
18
  <div class="tsd-signature"><span class="tsd-kind-type-alias">Object<wbr/>Without<wbr/>Id</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type ">Omit</span><span class="tsd-signature-symbol">&lt;</span><a href="KeyValueObject.html" class="tsd-signature-type tsd-kind-type-alias">KeyValueObject</a><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">&quot;id&quot;</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources">
19
19
  <ul>
20
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/utils/validate-type.ts#L7">src/types/utils/validate-type.ts:7</a></li></ul></aside></div>
20
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/utils/validate-type.ts#L7">src/types/utils/validate-type.ts:7</a></li></ul></aside></div>
21
21
  <div class="col-sidebar">
22
22
  <div class="page-menu">
23
23
  <div class="tsd-navigation settings">
@@ -37,7 +37,7 @@
37
37
  <h5><span class="tsd-kind-parameter">b</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5></li></ul></div>
38
38
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li></ul></li></ul></div><aside class="tsd-sources">
39
39
  <ul>
40
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/priority-queue.ts#L1">src/types/data-structures/priority-queue.ts:1</a></li></ul></aside></div>
40
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/priority-queue.ts#L1">src/types/data-structures/priority-queue.ts:1</a></li></ul></aside></div>
41
41
  <div class="col-sidebar">
42
42
  <div class="page-menu">
43
43
  <div class="tsd-navigation settings">
@@ -17,7 +17,7 @@
17
17
  <h1>Type alias PriorityQueueDFSOrderPattern</h1></div>
18
18
  <div class="tsd-signature"><span class="tsd-kind-type-alias">Priority<wbr/>QueueDFSOrder<wbr/>Pattern</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">&quot;pre&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;in&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;post&quot;</span></div><aside class="tsd-sources">
19
19
  <ul>
20
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/priority-queue.ts#L9">src/types/data-structures/priority-queue.ts:9</a></li></ul></aside></div>
20
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/priority-queue.ts#L9">src/types/data-structures/priority-queue.ts:9</a></li></ul></aside></div>
21
21
  <div class="col-sidebar">
22
22
  <div class="page-menu">
23
23
  <div class="tsd-navigation settings">
@@ -31,7 +31,7 @@
31
31
  <li class="tsd-parameter">
32
32
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-property">nodes</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">[]</span></h5></li></ul></div><aside class="tsd-sources">
33
33
  <ul>
34
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/priority-queue.ts#L3">src/types/data-structures/priority-queue.ts:3</a></li></ul></aside></div>
34
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/priority-queue.ts#L3">src/types/data-structures/priority-queue.ts:3</a></li></ul></aside></div>
35
35
  <div class="col-sidebar">
36
36
  <div class="page-menu">
37
37
  <div class="tsd-navigation settings">
@@ -22,7 +22,7 @@
22
22
  <li>
23
23
  <h4><span class="tsd-kind-type-parameter">T</span></h4></li></ul></section><aside class="tsd-sources">
24
24
  <ul>
25
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/rb-tree.ts#L6">src/types/data-structures/rb-tree.ts:6</a></li></ul></aside></div>
25
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/rb-tree.ts#L6">src/types/data-structures/rb-tree.ts:6</a></li></ul></aside></div>
26
26
  <div class="col-sidebar">
27
27
  <div class="page-menu">
28
28
  <div class="tsd-navigation settings">
@@ -20,7 +20,7 @@
20
20
  <h4>Type declaration</h4>
21
21
  <ul class="tsd-parameters"></ul></div><aside class="tsd-sources">
22
22
  <ul>
23
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/rb-tree.ts#L8">src/types/data-structures/rb-tree.ts:8</a></li></ul></aside></div>
23
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/rb-tree.ts#L8">src/types/data-structures/rb-tree.ts:8</a></li></ul></aside></div>
24
24
  <div class="col-sidebar">
25
25
  <div class="page-menu">
26
26
  <div class="tsd-navigation settings">
@@ -17,7 +17,7 @@
17
17
  <h1>Type alias RestrictValById</h1></div>
18
18
  <div class="tsd-signature"><span class="tsd-kind-type-alias">Restrict<wbr/>Val<wbr/>By<wbr/>Id</span><span class="tsd-signature-symbol">:</span> <a href="NonNumberNonObjectButDefined.html" class="tsd-signature-type tsd-kind-type-alias">NonNumberNonObjectButDefined</a><span class="tsd-signature-symbol"> | </span><a href="ObjectWithoutId.html" class="tsd-signature-type tsd-kind-type-alias">ObjectWithoutId</a><span class="tsd-signature-symbol"> | </span><a href="ObjectWithNonNumberId.html" class="tsd-signature-type tsd-kind-type-alias">ObjectWithNonNumberId</a><span class="tsd-signature-symbol"> | </span><a href="ObjectWithNumberId.html" class="tsd-signature-type tsd-kind-type-alias">ObjectWithNumberId</a></div><aside class="tsd-sources">
19
19
  <ul>
20
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/utils/validate-type.ts#L19">src/types/utils/validate-type.ts:19</a></li></ul></aside></div>
20
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/utils/validate-type.ts#L19">src/types/utils/validate-type.ts:19</a></li></ul></aside></div>
21
21
  <div class="col-sidebar">
22
22
  <div class="page-menu">
23
23
  <div class="tsd-navigation settings">
@@ -17,7 +17,7 @@
17
17
  <h1>Type alias SegmentTreeNodeVal</h1></div>
18
18
  <div class="tsd-signature"><span class="tsd-kind-type-alias">Segment<wbr/>Tree<wbr/>Node<wbr/>Val</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources">
19
19
  <ul>
20
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/segment-tree.ts#L1">src/types/data-structures/segment-tree.ts:1</a></li></ul></aside></div>
20
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/segment-tree.ts#L1">src/types/data-structures/segment-tree.ts:1</a></li></ul></aside></div>
21
21
  <div class="col-sidebar">
22
22
  <div class="page-menu">
23
23
  <div class="tsd-navigation settings">
@@ -24,7 +24,7 @@
24
24
  <li>
25
25
  <h4><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol"> extends </span><span class="tsd-signature-symbol">keyof </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4></li></ul></section><aside class="tsd-sources">
26
26
  <ul>
27
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/utils/utils.ts#L6">src/types/utils/utils.ts:6</a></li></ul></aside></div>
27
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/utils/utils.ts#L6">src/types/utils/utils.ts:6</a></li></ul></aside></div>
28
28
  <div class="col-sidebar">
29
29
  <div class="page-menu">
30
30
  <div class="tsd-navigation settings">
@@ -25,7 +25,7 @@
25
25
  <li class="tsd-description">
26
26
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">ReturnType</span><span class="tsd-signature-symbol">&lt;</span><a href="ToThunkFn.html" class="tsd-signature-type tsd-kind-type-alias">ToThunkFn</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-symbol">{ </span><br/><span>    </span><span class="tsd-kind-property">__THUNK__</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">; </span><br/><span class="tsd-signature-symbol">}</span></h4></li></ul></li></ul></div><aside class="tsd-sources">
27
27
  <ul>
28
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/utils/utils.ts#L2">src/types/utils/utils.ts:2</a></li></ul></aside></div>
28
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/utils/utils.ts#L2">src/types/utils/utils.ts:2</a></li></ul></aside></div>
29
29
  <div class="col-sidebar">
30
30
  <div class="page-menu">
31
31
  <div class="tsd-navigation settings">
@@ -25,7 +25,7 @@
25
25
  <li class="tsd-description">
26
26
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">ReturnType</span><span class="tsd-signature-symbol">&lt;</span><a href="TrlFn.html" class="tsd-signature-type tsd-kind-type-alias">TrlFn</a><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></li></ul></div><aside class="tsd-sources">
27
27
  <ul>
28
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/utils/utils.ts#L1">src/types/utils/utils.ts:1</a></li></ul></aside></div>
28
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/utils/utils.ts#L1">src/types/utils/utils.ts:1</a></li></ul></aside></div>
29
29
  <div class="col-sidebar">
30
30
  <div class="page-menu">
31
31
  <div class="tsd-navigation settings">
@@ -17,7 +17,7 @@
17
17
  <h1>Type alias TopologicalStatus</h1></div>
18
18
  <div class="tsd-signature"><span class="tsd-kind-type-alias">Topological<wbr/>Status</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">0</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">1</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">2</span></div><aside class="tsd-sources">
19
19
  <ul>
20
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/directed-graph.ts#L2">src/types/data-structures/directed-graph.ts:2</a></li></ul></aside></div>
20
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/directed-graph.ts#L2">src/types/data-structures/directed-graph.ts:2</a></li></ul></aside></div>
21
21
  <div class="col-sidebar">
22
22
  <div class="page-menu">
23
23
  <div class="tsd-navigation settings">
@@ -22,7 +22,7 @@
22
22
  <li>
23
23
  <h4><span class="tsd-kind-type-parameter">T</span></h4></li></ul></section><aside class="tsd-sources">
24
24
  <ul>
25
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/tree-multiset.ts#L4">src/types/data-structures/tree-multiset.ts:4</a></li></ul></aside></div>
25
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/tree-multiset.ts#L4">src/types/data-structures/tree-multiset.ts:4</a></li></ul></aside></div>
26
26
  <div class="col-sidebar">
27
27
  <div class="page-menu">
28
28
  <div class="tsd-navigation settings">
@@ -20,7 +20,7 @@
20
20
  <h4>Type declaration</h4>
21
21
  <ul class="tsd-parameters"></ul></div><aside class="tsd-sources">
22
22
  <ul>
23
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/tree-multiset.ts#L6">src/types/data-structures/tree-multiset.ts:6</a></li></ul></aside></div>
23
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/tree-multiset.ts#L6">src/types/data-structures/tree-multiset.ts:6</a></li></ul></aside></div>
24
24
  <div class="col-sidebar">
25
25
  <div class="page-menu">
26
26
  <div class="tsd-navigation settings">
@@ -30,7 +30,7 @@
30
30
  <h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5></li></ul></div>
31
31
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">any</span></h4></li></ul></li></ul></div><aside class="tsd-sources">
32
32
  <ul>
33
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/utils/utils.ts#L4">src/types/utils/utils.ts:4</a></li></ul></aside></div>
33
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/utils/utils.ts#L4">src/types/utils/utils.ts:4</a></li></ul></aside></div>
34
34
  <div class="col-sidebar">
35
35
  <div class="page-menu">
36
36
  <div class="tsd-navigation settings">
@@ -30,7 +30,7 @@
30
30
  <h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5></li></ul></div>
31
31
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">any</span></h4></li></ul></li></ul></div><aside class="tsd-sources">
32
32
  <ul>
33
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/utils/utils.ts#L3">src/types/utils/utils.ts:3</a></li></ul></aside></div>
33
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/utils/utils.ts#L3">src/types/utils/utils.ts:3</a></li></ul></aside></div>
34
34
  <div class="col-sidebar">
35
35
  <div class="page-menu">
36
36
  <div class="tsd-navigation settings">
@@ -17,7 +17,7 @@
17
17
  <h1>Type alias Turning</h1></div>
18
18
  <div class="tsd-signature"><span class="tsd-kind-type-alias">Turning</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{</span><br/><span>    </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">key</span><span class="tsd-signature-symbol"> in </span><a href="Direction.html" class="tsd-signature-type tsd-kind-type-alias">Direction</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">: </span><a href="Direction.html" class="tsd-signature-type tsd-kind-type-alias">Direction</a><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources">
19
19
  <ul>
20
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/navigator.ts#L2">src/types/data-structures/navigator.ts:2</a></li></ul></aside></div>
20
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/navigator.ts#L2">src/types/data-structures/navigator.ts:2</a></li></ul></aside></div>
21
21
  <div class="col-sidebar">
22
22
  <div class="page-menu">
23
23
  <div class="tsd-navigation settings">
@@ -17,7 +17,7 @@
17
17
  <h1>Type alias VertexId</h1></div>
18
18
  <div class="tsd-signature"><span class="tsd-kind-type-alias">Vertex<wbr/>Id</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span></div><aside class="tsd-sources">
19
19
  <ul>
20
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/types/data-structures/abstract-graph.ts#L1">src/types/data-structures/abstract-graph.ts:1</a></li></ul></aside></div>
20
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/types/data-structures/abstract-graph.ts#L1">src/types/data-structures/abstract-graph.ts:1</a></li></ul></aside></div>
21
21
  <div class="col-sidebar">
22
22
  <div class="page-menu">
23
23
  <div class="tsd-navigation settings">
@@ -17,7 +17,7 @@
17
17
  <h1>Variable THUNK_SYMBOL<code class="tsd-tag ts-flagConst">Const</code> </h1></div>
18
18
  <div class="tsd-signature"><span class="tsd-kind-variable">THUNK_<wbr/>SYMBOL</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">typeof </span><a href="THUNK_SYMBOL.html" class="tsd-signature-type tsd-kind-variable">THUNK_SYMBOL</a><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources">
19
19
  <ul>
20
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/utils/utils.ts#L35">src/utils/utils.ts:35</a></li></ul></aside></div>
20
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/474f431/src/utils/utils.ts#L35">src/utils/utils.ts:35</a></li></ul></aside></div>
21
21
  <div class="col-sidebar">
22
22
  <div class="page-menu">
23
23
  <div class="tsd-navigation settings">
package/jest.config.js CHANGED
@@ -3,5 +3,6 @@ module.exports = {
3
3
  testEnvironment: 'node',
4
4
  testMatch: ['<rootDir>/test/**/*.test.ts', '<rootDir>/test/**/*.test.js'],
5
5
  collectCoverage: true,
6
+ coverageReporters: ['clover', 'json', 'lcov', ['text', {skipFull: true}], "json-summary"],
6
7
  coverageDirectory: 'coverage'
7
8
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "data-structure-typed",
3
- "version": "1.32.0",
4
- "description": "Data Structures of Javascript & TypeScript. AVLTree, Binary Search Tree, Binary Tree, Tree Multiset, Graph, Heap, Priority Queue, Linked List.",
3
+ "version": "1.32.1",
4
+ "description": "Data Structures of Javascript & TypeScript. Binary Tree, BST, Graph, Heap, Priority Queue, Linked List, Queue, Deque, Stack, AVL Tree, Tree Multiset, Trie, Directed Graph, Undirected Graph, Singly Linked List, Doubly Linked List, Max Heap, Max Priority Queue, Min Heap, Min Priority Queue.",
5
5
  "main": "dist/index.js",
6
6
  "module": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
@@ -19,12 +19,26 @@
19
19
  "test": "jest",
20
20
  "deps:check": "dependency-cruiser src",
21
21
  "changelog": "auto-changelog",
22
- "build:publish": "npm run test && npm run build && npm run build:docs && npm run changelog && npm publish"
22
+ "coverage:badge": "istanbul-badges-readme",
23
+ "package": "npm run lint && npm run test && npm run build && npm run build:docs && npm run changelog",
24
+ "deploy": "npm run package && npm publish"
23
25
  },
24
26
  "repository": {
25
27
  "type": "git",
26
28
  "url": "git+https://github.com/zrwusa/data-structure-typed.git"
27
29
  },
30
+ "targets": {
31
+ "default": {
32
+ "context": "node",
33
+ "includeNodeModules": true,
34
+ "engines": {
35
+ "node": "19"
36
+ }
37
+ }
38
+ },
39
+ "engines": {
40
+ "node": "19"
41
+ },
28
42
  "keywords": [
29
43
  "data",
30
44
  "structure",
@@ -159,6 +173,7 @@
159
173
  "eslint-plugin-import": "^2.25.4",
160
174
  "graph-typed": "^1.31.0",
161
175
  "heap-typed": "^1.31.0",
176
+ "istanbul-badges-readme": "^1.8.5",
162
177
  "jest": "^29.6.2",
163
178
  "linked-list-typed": "^1.31.0",
164
179
  "max-heap-typed": "^1.31.0",
@@ -179,8 +194,5 @@
179
194
  "undirected-graph-typed": "^1.31.0",
180
195
  "webpack": "^5.88.2",
181
196
  "webpack-cli": "^5.1.4"
182
- },
183
- "dependencies": {
184
- "data-structure-typed": "^1.31.0"
185
197
  }
186
198
  }
@@ -0,0 +1 @@
1
+ export class AaTree {}