data-structure-typed 2.5.2 → 2.5.3

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 (156) hide show
  1. package/CHANGELOG.md +3 -1
  2. package/MIGRATION.md +169 -0
  3. package/README.md +60 -6
  4. package/README_CN.md +551 -143
  5. package/SPECIFICATION.md +20 -14
  6. package/SPECIFICATION.zh-CN.md +20 -14
  7. package/dist/cjs/binary-tree.cjs +2417 -132
  8. package/dist/cjs/graph.cjs +248 -14
  9. package/dist/cjs/hash.cjs +62 -7
  10. package/dist/cjs/heap.cjs +103 -16
  11. package/dist/cjs/index.cjs +3046 -124
  12. package/dist/cjs/linked-list.cjs +219 -0
  13. package/dist/cjs/matrix.cjs +32 -0
  14. package/dist/cjs/priority-queue.cjs +101 -14
  15. package/dist/cjs/queue.cjs +215 -0
  16. package/dist/cjs/stack.cjs +44 -4
  17. package/dist/cjs/trie.cjs +44 -0
  18. package/dist/cjs-legacy/binary-tree.cjs +2406 -123
  19. package/dist/cjs-legacy/graph.cjs +248 -14
  20. package/dist/cjs-legacy/hash.cjs +62 -7
  21. package/dist/cjs-legacy/heap.cjs +103 -16
  22. package/dist/cjs-legacy/index.cjs +3105 -185
  23. package/dist/cjs-legacy/linked-list.cjs +219 -0
  24. package/dist/cjs-legacy/matrix.cjs +32 -0
  25. package/dist/cjs-legacy/priority-queue.cjs +101 -14
  26. package/dist/cjs-legacy/queue.cjs +215 -0
  27. package/dist/cjs-legacy/stack.cjs +44 -4
  28. package/dist/cjs-legacy/trie.cjs +44 -0
  29. package/dist/esm/binary-tree.mjs +2417 -132
  30. package/dist/esm/graph.mjs +248 -14
  31. package/dist/esm/hash.mjs +62 -7
  32. package/dist/esm/heap.mjs +103 -16
  33. package/dist/esm/index.mjs +3046 -124
  34. package/dist/esm/linked-list.mjs +219 -0
  35. package/dist/esm/matrix.mjs +32 -0
  36. package/dist/esm/priority-queue.mjs +101 -14
  37. package/dist/esm/queue.mjs +215 -0
  38. package/dist/esm/stack.mjs +44 -4
  39. package/dist/esm/trie.mjs +44 -0
  40. package/dist/esm-legacy/binary-tree.mjs +2406 -123
  41. package/dist/esm-legacy/graph.mjs +248 -14
  42. package/dist/esm-legacy/hash.mjs +62 -7
  43. package/dist/esm-legacy/heap.mjs +103 -16
  44. package/dist/esm-legacy/index.mjs +3105 -185
  45. package/dist/esm-legacy/linked-list.mjs +219 -0
  46. package/dist/esm-legacy/matrix.mjs +32 -0
  47. package/dist/esm-legacy/priority-queue.mjs +101 -14
  48. package/dist/esm-legacy/queue.mjs +215 -0
  49. package/dist/esm-legacy/stack.mjs +44 -4
  50. package/dist/esm-legacy/trie.mjs +44 -0
  51. package/dist/types/data-structures/binary-tree/avl-tree.d.ts +50 -2
  52. package/dist/types/data-structures/binary-tree/binary-indexed-tree.d.ts +56 -0
  53. package/dist/types/data-structures/binary-tree/binary-tree.d.ts +116 -15
  54. package/dist/types/data-structures/binary-tree/bst.d.ts +99 -3
  55. package/dist/types/data-structures/binary-tree/red-black-tree.d.ts +79 -8
  56. package/dist/types/data-structures/binary-tree/segment-tree.d.ts +24 -0
  57. package/dist/types/data-structures/binary-tree/tree-map.d.ts +520 -1
  58. package/dist/types/data-structures/binary-tree/tree-multi-map.d.ts +489 -1
  59. package/dist/types/data-structures/binary-tree/tree-multi-set.d.ts +393 -1
  60. package/dist/types/data-structures/binary-tree/tree-set.d.ts +500 -1
  61. package/dist/types/data-structures/graph/directed-graph.d.ts +40 -0
  62. package/dist/types/data-structures/graph/undirected-graph.d.ts +36 -0
  63. package/dist/types/data-structures/hash/hash-map.d.ts +51 -6
  64. package/dist/types/data-structures/heap/heap.d.ts +98 -12
  65. package/dist/types/data-structures/linked-list/doubly-linked-list.d.ts +75 -0
  66. package/dist/types/data-structures/linked-list/singly-linked-list.d.ts +61 -1
  67. package/dist/types/data-structures/linked-list/skip-linked-list.d.ts +72 -0
  68. package/dist/types/data-structures/matrix/matrix.d.ts +32 -0
  69. package/dist/types/data-structures/queue/deque.d.ts +82 -0
  70. package/dist/types/data-structures/queue/queue.d.ts +61 -0
  71. package/dist/types/data-structures/stack/stack.d.ts +42 -2
  72. package/dist/types/data-structures/trie/trie.d.ts +48 -0
  73. package/dist/types/interfaces/binary-tree.d.ts +2 -3
  74. package/dist/umd/data-structure-typed.js +3105 -185
  75. package/dist/umd/data-structure-typed.min.js +4 -4
  76. package/docs-site-docusaurus/docs/api/classes/AVLTree.md +188 -200
  77. package/docs-site-docusaurus/docs/api/classes/AVLTreeNode.md +11 -11
  78. package/docs-site-docusaurus/docs/api/classes/AbstractGraph.md +62 -62
  79. package/docs-site-docusaurus/docs/api/classes/BST.md +183 -195
  80. package/docs-site-docusaurus/docs/api/classes/BSTNode.md +13 -13
  81. package/docs-site-docusaurus/docs/api/classes/BinaryIndexedTree.md +15 -15
  82. package/docs-site-docusaurus/docs/api/classes/BinaryTree.md +143 -155
  83. package/docs-site-docusaurus/docs/api/classes/BinaryTreeNode.md +13 -13
  84. package/docs-site-docusaurus/docs/api/classes/Deque.md +99 -85
  85. package/docs-site-docusaurus/docs/api/classes/DirectedGraph.md +73 -73
  86. package/docs-site-docusaurus/docs/api/classes/DoublyLinkedList.md +100 -70
  87. package/docs-site-docusaurus/docs/api/classes/DoublyLinkedListNode.md +8 -8
  88. package/docs-site-docusaurus/docs/api/classes/FibonacciHeap.md +12 -12
  89. package/docs-site-docusaurus/docs/api/classes/FibonacciHeapNode.md +1 -1
  90. package/docs-site-docusaurus/docs/api/classes/HashMap.md +38 -38
  91. package/docs-site-docusaurus/docs/api/classes/Heap.md +96 -85
  92. package/docs-site-docusaurus/docs/api/classes/IterableElementBase.md +25 -25
  93. package/docs-site-docusaurus/docs/api/classes/IterableEntryBase.md +23 -23
  94. package/docs-site-docusaurus/docs/api/classes/LinearBase.md +48 -48
  95. package/docs-site-docusaurus/docs/api/classes/LinearLinkedBase.md +52 -52
  96. package/docs-site-docusaurus/docs/api/classes/LinkedHashMap.md +42 -42
  97. package/docs-site-docusaurus/docs/api/classes/LinkedListNode.md +6 -6
  98. package/docs-site-docusaurus/docs/api/classes/LinkedListQueue.md +74 -74
  99. package/docs-site-docusaurus/docs/api/classes/MapGraph.md +73 -73
  100. package/docs-site-docusaurus/docs/api/classes/Matrix.md +31 -31
  101. package/docs-site-docusaurus/docs/api/classes/MaxHeap.md +104 -89
  102. package/docs-site-docusaurus/docs/api/classes/MaxPriorityQueue.md +104 -89
  103. package/docs-site-docusaurus/docs/api/classes/MinHeap.md +104 -89
  104. package/docs-site-docusaurus/docs/api/classes/MinPriorityQueue.md +104 -89
  105. package/docs-site-docusaurus/docs/api/classes/Navigator.md +5 -5
  106. package/docs-site-docusaurus/docs/api/classes/PriorityQueue.md +103 -88
  107. package/docs-site-docusaurus/docs/api/classes/Queue.md +111 -59
  108. package/docs-site-docusaurus/docs/api/classes/RedBlackTree.md +200 -212
  109. package/docs-site-docusaurus/docs/api/classes/SegmentTree.md +10 -10
  110. package/docs-site-docusaurus/docs/api/classes/SinglyLinkedList.md +75 -75
  111. package/docs-site-docusaurus/docs/api/classes/SinglyLinkedListNode.md +6 -6
  112. package/docs-site-docusaurus/docs/api/classes/SkipList.md +37 -37
  113. package/docs-site-docusaurus/docs/api/classes/Stack.md +42 -42
  114. package/docs-site-docusaurus/docs/api/classes/TreeMap.md +107 -36
  115. package/docs-site-docusaurus/docs/api/classes/TreeMultiMap.md +43 -43
  116. package/docs-site-docusaurus/docs/api/classes/TreeSet.md +106 -35
  117. package/docs-site-docusaurus/docs/api/classes/Trie.md +43 -43
  118. package/docs-site-docusaurus/docs/api/classes/TrieNode.md +8 -8
  119. package/docs-site-docusaurus/docs/api/classes/UndirectedGraph.md +72 -72
  120. package/docs-site-docusaurus/docs/guide/architecture.md +75 -7
  121. package/docs-site-docusaurus/docs/guide/concepts.md +53 -34
  122. package/docs-site-docusaurus/docs/guide/faq.md +53 -0
  123. package/docs-site-docusaurus/docs/guide/guides.md +8 -9
  124. package/docs-site-docusaurus/docs/guide/integrations.md +74 -177
  125. package/docs-site-docusaurus/docs/guide/overview.md +131 -17
  126. package/docs-site-docusaurus/src/pages/index.tsx +4 -0
  127. package/docs-site-docusaurus/typedoc.json +1 -0
  128. package/package.json +7 -6
  129. package/src/data-structures/binary-tree/avl-tree.ts +52 -5
  130. package/src/data-structures/binary-tree/binary-indexed-tree.ts +56 -0
  131. package/src/data-structures/binary-tree/binary-tree.ts +167 -81
  132. package/src/data-structures/binary-tree/bst.ts +101 -7
  133. package/src/data-structures/binary-tree/red-black-tree.ts +82 -15
  134. package/src/data-structures/binary-tree/segment-tree.ts +24 -0
  135. package/src/data-structures/binary-tree/tree-map.ts +540 -3
  136. package/src/data-structures/binary-tree/tree-multi-map.ts +490 -2
  137. package/src/data-structures/binary-tree/tree-multi-set.ts +393 -1
  138. package/src/data-structures/binary-tree/tree-set.ts +520 -3
  139. package/src/data-structures/graph/directed-graph.ts +41 -1
  140. package/src/data-structures/graph/undirected-graph.ts +37 -1
  141. package/src/data-structures/hash/hash-map.ts +67 -12
  142. package/src/data-structures/heap/heap.ts +107 -19
  143. package/src/data-structures/linked-list/doubly-linked-list.ts +88 -0
  144. package/src/data-structures/linked-list/singly-linked-list.ts +61 -1
  145. package/src/data-structures/linked-list/skip-linked-list.ts +72 -0
  146. package/src/data-structures/matrix/matrix.ts +32 -0
  147. package/src/data-structures/queue/deque.ts +85 -0
  148. package/src/data-structures/queue/queue.ts +73 -0
  149. package/src/data-structures/stack/stack.ts +45 -5
  150. package/src/data-structures/trie/trie.ts +48 -0
  151. package/src/interfaces/binary-tree.ts +1 -9
  152. package/.vitepress/cache/deps_temp_51f5f1b0/chunk-7OIKW5WK.js +0 -12984
  153. package/.vitepress/cache/deps_temp_51f5f1b0/package.json +0 -3
  154. package/.vitepress/cache/deps_temp_51f5f1b0/vitepress___@vue_devtools-api.js +0 -4505
  155. package/.vitepress/cache/deps_temp_51f5f1b0/vitepress___@vueuse_core.js +0 -9731
  156. package/.vitepress/cache/deps_temp_51f5f1b0/vue.js +0 -347
@@ -6,7 +6,7 @@
6
6
 
7
7
  # Abstract Class: LinearLinkedBase\<E, R, NODE\>
8
8
 
9
- Defined in: [data-structures/base/linear-base.ts:402](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L402)
9
+ Defined in: [data-structures/base/linear-base.ts:402](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L402)
10
10
 
11
11
  Linked-list specialized linear container.
12
12
 
@@ -53,7 +53,7 @@ Linked node type.
53
53
  get abstract length(): number;
54
54
  ```
55
55
 
56
- Defined in: [data-structures/base/linear-base.ts:91](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L91)
56
+ Defined in: [data-structures/base/linear-base.ts:91](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L91)
57
57
 
58
58
  Element count.
59
59
 
@@ -81,7 +81,7 @@ Number of elements.
81
81
  get maxLen(): number;
82
82
  ```
83
83
 
84
- Defined in: [data-structures/base/linear-base.ts:100](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L100)
84
+ Defined in: [data-structures/base/linear-base.ts:100](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L100)
85
85
 
86
86
  Upper bound for length (if positive), or `-1` when unbounded.
87
87
 
@@ -109,7 +109,7 @@ Maximum allowed length.
109
109
  get toElementFn(): ((rawElement) => E) | undefined;
110
110
  ```
111
111
 
112
- Defined in: [data-structures/base/iterable-element-base.ts:48](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L48)
112
+ Defined in: [data-structures/base/iterable-element-base.ts:48](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L48)
113
113
 
114
114
  Exposes the current `toElementFn`, if configured.
115
115
 
@@ -135,7 +135,7 @@ The converter function or `undefined` when not set.
135
135
  iterator: IterableIterator<E>;
136
136
  ```
137
137
 
138
- Defined in: [data-structures/base/iterable-element-base.ts:61](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L61)
138
+ Defined in: [data-structures/base/iterable-element-base.ts:61](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L61)
139
139
 
140
140
  Returns an iterator over the structure's elements.
141
141
 
@@ -169,7 +169,7 @@ Producing the iterator is O(1); consuming the entire iterator is Time O(n) with
169
169
  abstract addAfter(existingElementOrNode, newElementOrNode): boolean;
170
170
  ```
171
171
 
172
- Defined in: [data-structures/base/linear-base.ts:609](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L609)
172
+ Defined in: [data-structures/base/linear-base.ts:609](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L609)
173
173
 
174
174
  Insert new element/node after an existing node.
175
175
 
@@ -205,7 +205,7 @@ Time O(1)~O(n) depending on reference access, Space O(1)
205
205
  abstract addAt(index, newElementOrNode): boolean;
206
206
  ```
207
207
 
208
- Defined in: [data-structures/base/linear-base.ts:377](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L377)
208
+ Defined in: [data-structures/base/linear-base.ts:377](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L377)
209
209
 
210
210
  Insert an element/node at a position.
211
211
 
@@ -245,7 +245,7 @@ Time O(1)~O(n) depending on implementation, Space O(1)
245
245
  abstract addBefore(existingElementOrNode, newElementOrNode): boolean;
246
246
  ```
247
247
 
248
- Defined in: [data-structures/base/linear-base.ts:600](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L600)
248
+ Defined in: [data-structures/base/linear-base.ts:600](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L600)
249
249
 
250
250
  Insert new element/node before an existing node.
251
251
 
@@ -281,7 +281,7 @@ Time O(1)~O(n) depending on reference access, Space O(1)
281
281
  abstract at(index): E | undefined;
282
282
  ```
283
283
 
284
- Defined in: [data-structures/base/linear-base.ts:360](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L360)
284
+ Defined in: [data-structures/base/linear-base.ts:360](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L360)
285
285
 
286
286
  Get element at an index.
287
287
 
@@ -315,7 +315,7 @@ Time O(1)~O(n) depending on implementation, Space O(1)
315
315
  abstract clear(): void;
316
316
  ```
317
317
 
318
- Defined in: [data-structures/base/iterable-element-base.ts:289](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L289)
318
+ Defined in: [data-structures/base/iterable-element-base.ts:289](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L289)
319
319
 
320
320
  Removes all elements from the structure.
321
321
 
@@ -341,7 +341,7 @@ Expected Time O(1) or O(n) depending on the implementation; Space O(1).
341
341
  abstract clone(): this;
342
342
  ```
343
343
 
344
- Defined in: [data-structures/base/linear-base.ts:321](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L321)
344
+ Defined in: [data-structures/base/linear-base.ts:321](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L321)
345
345
 
346
346
  Deep clone while preserving concrete subtype.
347
347
 
@@ -367,7 +367,7 @@ Time O(n), Space O(n)
367
367
  concat(...items): this;
368
368
  ```
369
369
 
370
- Defined in: [data-structures/base/linear-base.ts:473](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L473)
370
+ Defined in: [data-structures/base/linear-base.ts:473](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L473)
371
371
 
372
372
  Concatenate lists/elements preserving order.
373
373
 
@@ -403,7 +403,7 @@ Time O(sum(length)), Space O(sum(length))
403
403
  abstract delete(elementOrNode): boolean;
404
404
  ```
405
405
 
406
- Defined in: [data-structures/base/linear-base.ts:591](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L591)
406
+ Defined in: [data-structures/base/linear-base.ts:591](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L591)
407
407
 
408
408
  Delete by element or node in a linked list.
409
409
 
@@ -437,7 +437,7 @@ Time O(1)~O(n) depending on availability of links, Space O(1)
437
437
  abstract deleteAt(pos): E | undefined;
438
438
  ```
439
439
 
440
- Defined in: [data-structures/base/linear-base.ts:368](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L368)
440
+ Defined in: [data-structures/base/linear-base.ts:368](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L368)
441
441
 
442
442
  Remove element at a position.
443
443
 
@@ -471,7 +471,7 @@ Time O(1)~O(n) depending on implementation, Space O(1)
471
471
  every(predicate, thisArg?): boolean;
472
472
  ```
473
473
 
474
- Defined in: [data-structures/base/iterable-element-base.ts:87](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L87)
474
+ Defined in: [data-structures/base/iterable-element-base.ts:87](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L87)
475
475
 
476
476
  Tests whether all elements satisfy the predicate.
477
477
 
@@ -514,7 +514,7 @@ fill(
514
514
  end?): this;
515
515
  ```
516
516
 
517
- Defined in: [data-structures/base/linear-base.ts:292](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L292)
517
+ Defined in: [data-structures/base/linear-base.ts:292](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L292)
518
518
 
519
519
  Fill a range with a value.
520
520
 
@@ -560,7 +560,7 @@ Time O(n), Space O(1)
560
560
  abstract filter(predicate, thisArg?): this;
561
561
  ```
562
562
 
563
- Defined in: [data-structures/base/iterable-element-base.ts:341](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L341)
563
+ Defined in: [data-structures/base/iterable-element-base.ts:341](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L341)
564
564
 
565
565
  Filters elements using the provided predicate and returns the same concrete structure type.
566
566
 
@@ -602,7 +602,7 @@ Time O(n), Space O(k) where `k` is the number of kept elements.
602
602
  find<S>(predicate, thisArg?): S | undefined;
603
603
  ```
604
604
 
605
- Defined in: [data-structures/base/iterable-element-base.ts:163](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L163)
605
+ Defined in: [data-structures/base/iterable-element-base.ts:163](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L163)
606
606
 
607
607
  Finds the first element that satisfies the predicate and returns it.
608
608
 
@@ -648,7 +648,7 @@ Time O(n) in the worst case; may exit early on the first match. Space O(1).
648
648
  find(predicate, thisArg?): E | undefined;
649
649
  ```
650
650
 
651
- Defined in: [data-structures/base/iterable-element-base.ts:164](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L164)
651
+ Defined in: [data-structures/base/iterable-element-base.ts:164](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L164)
652
652
 
653
653
  Finds the first element that satisfies the predicate and returns it.
654
654
 
@@ -690,7 +690,7 @@ Time O(n) in the worst case; may exit early on the first match. Space O(1).
690
690
  findIndex(predicate, thisArg?): number;
691
691
  ```
692
692
 
693
- Defined in: [data-structures/base/linear-base.ts:151](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L151)
693
+ Defined in: [data-structures/base/linear-base.ts:151](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L151)
694
694
 
695
695
  Find the first index matching a predicate.
696
696
 
@@ -730,7 +730,7 @@ Time O(n), Space O(1)
730
730
  forEach(callbackfn, thisArg?): void;
731
731
  ```
732
732
 
733
- Defined in: [data-structures/base/iterable-element-base.ts:133](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L133)
733
+ Defined in: [data-structures/base/iterable-element-base.ts:133](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L133)
734
734
 
735
735
  Invokes a callback for each element in iteration order.
736
736
 
@@ -770,7 +770,7 @@ Time O(n), Space O(1).
770
770
  abstract getNodeAt(index): NODE | undefined;
771
771
  ```
772
772
 
773
- Defined in: [data-structures/base/linear-base.ts:617](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L617)
773
+ Defined in: [data-structures/base/linear-base.ts:617](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L617)
774
774
 
775
775
  Node at index (for random-access emulation).
776
776
 
@@ -800,7 +800,7 @@ Time O(n), Space O(1)
800
800
  has(element): boolean;
801
801
  ```
802
802
 
803
- Defined in: [data-structures/base/iterable-element-base.ts:189](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L189)
803
+ Defined in: [data-structures/base/iterable-element-base.ts:189](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L189)
804
804
 
805
805
  Checks whether a strictly-equal element exists in the structure.
806
806
 
@@ -834,7 +834,7 @@ Time O(n) in the worst case. Space O(1).
834
834
  indexOf(searchElement, fromIndex?): number;
835
835
  ```
836
836
 
837
- Defined in: [data-structures/base/linear-base.ts:422](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L422)
837
+ Defined in: [data-structures/base/linear-base.ts:422](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L422)
838
838
 
839
839
  Linked-list optimized `indexOf` (forwards scan).
840
840
 
@@ -874,7 +874,7 @@ Time O(n), Space O(1)
874
874
  abstract isEmpty(): boolean;
875
875
  ```
876
876
 
877
- Defined in: [data-structures/base/iterable-element-base.ts:280](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L280)
877
+ Defined in: [data-structures/base/iterable-element-base.ts:280](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L280)
878
878
 
879
879
  Indicates whether the structure currently contains no elements.
880
880
 
@@ -900,7 +900,7 @@ Expected Time O(1), Space O(1) for most implementations.
900
900
  join(separator?): string;
901
901
  ```
902
902
 
903
- Defined in: [data-structures/base/linear-base.ts:228](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L228)
903
+ Defined in: [data-structures/base/linear-base.ts:228](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L228)
904
904
 
905
905
  Join all elements into a string.
906
906
 
@@ -934,7 +934,7 @@ Time O(n), Space O(n)
934
934
  lastIndexOf(searchElement, fromIndex?): number;
935
935
  ```
936
936
 
937
- Defined in: [data-structures/base/linear-base.ts:448](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L448)
937
+ Defined in: [data-structures/base/linear-base.ts:448](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L448)
938
938
 
939
939
  Linked-list optimized `lastIndexOf` (reverse scan).
940
940
 
@@ -977,7 +977,7 @@ abstract map<EM, RM>(
977
977
  thisArg?): IterableElementBase<EM, RM>;
978
978
  ```
979
979
 
980
- Defined in: [data-structures/base/iterable-element-base.ts:313](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L313)
980
+ Defined in: [data-structures/base/iterable-element-base.ts:313](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L313)
981
981
 
982
982
  Maps each element to a new element and returns a new iterable structure.
983
983
 
@@ -1037,7 +1037,7 @@ Time O(n), Space O(n).
1037
1037
  abstract mapSame(callback, thisArg?): this;
1038
1038
  ```
1039
1039
 
1040
- Defined in: [data-structures/base/iterable-element-base.ts:329](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L329)
1040
+ Defined in: [data-structures/base/iterable-element-base.ts:329](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L329)
1041
1041
 
1042
1042
  Maps each element to the same element type and returns the same concrete structure type.
1043
1043
 
@@ -1077,7 +1077,7 @@ Time O(n), Space O(n).
1077
1077
  print(): void;
1078
1078
  ```
1079
1079
 
1080
- Defined in: [data-structures/base/iterable-element-base.ts:269](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L269)
1080
+ Defined in: [data-structures/base/iterable-element-base.ts:269](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L269)
1081
1081
 
1082
1082
  Prints `toVisual()` to the console. Intended for quick debugging.
1083
1083
 
@@ -1103,7 +1103,7 @@ Time O(n) due to materialization, Space O(n) for the intermediate representation
1103
1103
  abstract push(elementOrNode): boolean;
1104
1104
  ```
1105
1105
 
1106
- Defined in: [data-structures/base/linear-base.ts:336](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L336)
1106
+ Defined in: [data-structures/base/linear-base.ts:336](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L336)
1107
1107
 
1108
1108
  Append one element or node to the tail.
1109
1109
 
@@ -1137,7 +1137,7 @@ Time O(1) amortized typical, Space O(1)
1137
1137
  abstract pushMany(elements): boolean[];
1138
1138
  ```
1139
1139
 
1140
- Defined in: [data-structures/base/linear-base.ts:344](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L344)
1140
+ Defined in: [data-structures/base/linear-base.ts:344](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L344)
1141
1141
 
1142
1142
  Append many elements/nodes at once.
1143
1143
 
@@ -1205,7 +1205,7 @@ Time O(n), Space O(1). Throws if called on an empty structure without `initialVa
1205
1205
  reduce(callbackfn): E;
1206
1206
  ```
1207
1207
 
1208
- Defined in: [data-structures/base/iterable-element-base.ts:194](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L194)
1208
+ Defined in: [data-structures/base/iterable-element-base.ts:194](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L194)
1209
1209
 
1210
1210
  ##### Parameters
1211
1211
 
@@ -1227,7 +1227,7 @@ Defined in: [data-structures/base/iterable-element-base.ts:194](https://github.c
1227
1227
  reduce(callbackfn, initialValue): E;
1228
1228
  ```
1229
1229
 
1230
- Defined in: [data-structures/base/iterable-element-base.ts:195](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L195)
1230
+ Defined in: [data-structures/base/iterable-element-base.ts:195](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L195)
1231
1231
 
1232
1232
  ##### Parameters
1233
1233
 
@@ -1253,7 +1253,7 @@ Defined in: [data-structures/base/iterable-element-base.ts:195](https://github.c
1253
1253
  reduce<U>(callbackfn, initialValue): U;
1254
1254
  ```
1255
1255
 
1256
- Defined in: [data-structures/base/iterable-element-base.ts:196](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L196)
1256
+ Defined in: [data-structures/base/iterable-element-base.ts:196](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L196)
1257
1257
 
1258
1258
  ##### Type Parameters
1259
1259
 
@@ -1287,7 +1287,7 @@ Defined in: [data-structures/base/iterable-element-base.ts:196](https://github.c
1287
1287
  reduceRight<U>(callbackfn, initialValue): U;
1288
1288
  ```
1289
1289
 
1290
- Defined in: [data-structures/base/linear-base.ts:574](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L574)
1290
+ Defined in: [data-structures/base/linear-base.ts:574](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L574)
1291
1291
 
1292
1292
  Right-to-left reduction using reverse iterator.
1293
1293
 
@@ -1333,7 +1333,7 @@ Time O(n), Space O(1)
1333
1333
  abstract reverse(): this;
1334
1334
  ```
1335
1335
 
1336
- Defined in: [data-structures/base/linear-base.ts:328](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L328)
1336
+ Defined in: [data-structures/base/linear-base.ts:328](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L328)
1337
1337
 
1338
1338
  Reverse the order of elements in-place (or equivalent).
1339
1339
 
@@ -1359,7 +1359,7 @@ Time O(n), Space O(1)
1359
1359
  abstract setAt(index, value): boolean;
1360
1360
  ```
1361
1361
 
1362
- Defined in: [data-structures/base/linear-base.ts:314](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L314)
1362
+ Defined in: [data-structures/base/linear-base.ts:314](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L314)
1363
1363
 
1364
1364
  Set the value at an index.
1365
1365
 
@@ -1399,7 +1399,7 @@ Time O(1) typical, Space O(1)
1399
1399
  slice(start?, end?): this;
1400
1400
  ```
1401
1401
 
1402
- Defined in: [data-structures/base/linear-base.ts:494](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L494)
1402
+ Defined in: [data-structures/base/linear-base.ts:494](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L494)
1403
1403
 
1404
1404
  Slice via forward iteration (no random access required).
1405
1405
 
@@ -1439,7 +1439,7 @@ Time O(n), Space O(n)
1439
1439
  some(predicate, thisArg?): boolean;
1440
1440
  ```
1441
1441
 
1442
- Defined in: [data-structures/base/iterable-element-base.ts:110](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L110)
1442
+ Defined in: [data-structures/base/iterable-element-base.ts:110](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L110)
1443
1443
 
1444
1444
  Tests whether at least one element satisfies the predicate.
1445
1445
 
@@ -1479,7 +1479,7 @@ Time O(n) in the worst case; may exit early on first success. Space O(1).
1479
1479
  sort(compareFn?): this;
1480
1480
  ```
1481
1481
 
1482
- Defined in: [data-structures/base/linear-base.ts:185](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L185)
1482
+ Defined in: [data-structures/base/linear-base.ts:185](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L185)
1483
1483
 
1484
1484
  In-place stable order via array sort semantics.
1485
1485
 
@@ -1516,7 +1516,7 @@ splice(
1516
1516
  items): this;
1517
1517
  ```
1518
1518
 
1519
- Defined in: [data-structures/base/linear-base.ts:522](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L522)
1519
+ Defined in: [data-structures/base/linear-base.ts:522](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L522)
1520
1520
 
1521
1521
  Splice by walking node iterators from the start index.
1522
1522
 
@@ -1562,7 +1562,7 @@ Time O(n + m), Space O(min(n, m)) where `m = items.length`
1562
1562
  toArray(): E[];
1563
1563
  ```
1564
1564
 
1565
- Defined in: [data-structures/base/iterable-element-base.ts:246](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L246)
1565
+ Defined in: [data-structures/base/iterable-element-base.ts:246](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L246)
1566
1566
 
1567
1567
  Materializes the elements into a new array.
1568
1568
 
@@ -1588,7 +1588,7 @@ Time O(n), Space O(n).
1588
1588
  toReversedArray(): E[];
1589
1589
  ```
1590
1590
 
1591
- Defined in: [data-structures/base/linear-base.ts:237](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L237)
1591
+ Defined in: [data-structures/base/linear-base.ts:237](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L237)
1592
1592
 
1593
1593
  Snapshot elements into a reversed array.
1594
1594
 
@@ -1614,7 +1614,7 @@ Time O(n), Space O(n)
1614
1614
  toVisual(): E[];
1615
1615
  ```
1616
1616
 
1617
- Defined in: [data-structures/base/iterable-element-base.ts:258](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L258)
1617
+ Defined in: [data-structures/base/iterable-element-base.ts:258](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L258)
1618
1618
 
1619
1619
  Returns a representation of the structure suitable for quick visualization.
1620
1620
  Defaults to an array of elements; subclasses may override to provide richer visuals.
@@ -1641,7 +1641,7 @@ Time O(n), Space O(n).
1641
1641
  values(): IterableIterator<E>;
1642
1642
  ```
1643
1643
 
1644
- Defined in: [data-structures/base/iterable-element-base.ts:72](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L72)
1644
+ Defined in: [data-structures/base/iterable-element-base.ts:72](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L72)
1645
1645
 
1646
1646
  Returns an iterator over the values (alias of the default iterator).
1647
1647
 
@@ -1670,7 +1670,7 @@ Creating the iterator is O(1); full iteration is Time O(n), Space O(1).
1670
1670
  protected optional _toElementFn?: (rawElement) => E;
1671
1671
  ```
1672
1672
 
1673
- Defined in: [data-structures/base/iterable-element-base.ts:39](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L39)
1673
+ Defined in: [data-structures/base/iterable-element-base.ts:39](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L39)
1674
1674
 
1675
1675
  The converter used to transform a raw element (`R`) into a public element (`E`).
1676
1676
 
@@ -1700,7 +1700,7 @@ Time O(1), Space O(1).
1700
1700
  abstract protected _createInstance(options?): this;
1701
1701
  ```
1702
1702
 
1703
- Defined in: [data-structures/base/linear-base.ts:385](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L385)
1703
+ Defined in: [data-structures/base/linear-base.ts:385](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L385)
1704
1704
 
1705
1705
  Create an empty list of the same species.
1706
1706
 
@@ -1734,7 +1734,7 @@ Time O(1), Space O(1)
1734
1734
  abstract protected _getIterator(...args): IterableIterator<E>;
1735
1735
  ```
1736
1736
 
1737
- Defined in: [data-structures/base/iterable-element-base.ts:352](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/iterable-element-base.ts#L352)
1737
+ Defined in: [data-structures/base/iterable-element-base.ts:352](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/iterable-element-base.ts#L352)
1738
1738
 
1739
1739
  Internal iterator factory used by the default iterator.
1740
1740
 
@@ -1768,7 +1768,7 @@ Implementations should yield in O(1) per element with O(1) extra space when poss
1768
1768
  abstract protected _getNodeIterator(...args): IterableIterator<NODE>;
1769
1769
  ```
1770
1770
 
1771
- Defined in: [data-structures/base/linear-base.ts:624](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L624)
1771
+ Defined in: [data-structures/base/linear-base.ts:624](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L624)
1772
1772
 
1773
1773
  Iterate linked nodes from head to tail.
1774
1774
 
@@ -1796,7 +1796,7 @@ Time O(n), Space O(1)
1796
1796
  abstract protected _getPrevNode(node): NODE | undefined;
1797
1797
  ```
1798
1798
 
1799
- Defined in: [data-structures/base/linear-base.ts:632](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L632)
1799
+ Defined in: [data-structures/base/linear-base.ts:632](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L632)
1800
1800
 
1801
1801
  Get previous node of a given node.
1802
1802
 
@@ -1826,7 +1826,7 @@ Time O(1)~O(n) depending on list variant (singly vs doubly), Space O(1)
1826
1826
  abstract protected _getReverseIterator(...args): IterableIterator<E>;
1827
1827
  ```
1828
1828
 
1829
- Defined in: [data-structures/base/linear-base.ts:392](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/base/linear-base.ts#L392)
1829
+ Defined in: [data-structures/base/linear-base.ts:392](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/base/linear-base.ts#L392)
1830
1830
 
1831
1831
  Reverse-direction iterator over elements.
1832
1832