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
  # Class: Trie\<R\>
8
8
 
9
- Defined in: [data-structures/trie/trie.ts:216](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L216)
9
+ Defined in: [data-structures/trie/trie.ts:216](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L216)
10
10
 
11
11
  Prefix tree (Trie) for fast prefix queries and word storage.
12
12
 
@@ -156,7 +156,7 @@ Time O(1), Space O(1)
156
156
  new Trie<R>(words?, options?): Trie<R>;
157
157
  ```
158
158
 
159
- Defined in: [data-structures/trie/trie.ts:225](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L225)
159
+ Defined in: [data-structures/trie/trie.ts:225](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L225)
160
160
 
161
161
  Create a Trie and optionally bulk-insert words.
162
162
 
@@ -198,7 +198,7 @@ Time O(totalChars), Space O(totalChars)
198
198
  get caseSensitive(): boolean;
199
199
  ```
200
200
 
201
- Defined in: [data-structures/trie/trie.ts:256](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L256)
201
+ Defined in: [data-structures/trie/trie.ts:256](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L256)
202
202
 
203
203
  Get whether comparisons are case-sensitive.
204
204
 
@@ -222,7 +222,7 @@ True if case-sensitive.
222
222
  get root(): TrieNode;
223
223
  ```
224
224
 
225
- Defined in: [data-structures/trie/trie.ts:268](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L268)
225
+ Defined in: [data-structures/trie/trie.ts:268](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L268)
226
226
 
227
227
  Get the root node.
228
228
 
@@ -246,7 +246,7 @@ Root TrieNode.
246
246
  get size(): number;
247
247
  ```
248
248
 
249
- Defined in: [data-structures/trie/trie.ts:244](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L244)
249
+ Defined in: [data-structures/trie/trie.ts:244](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L244)
250
250
 
251
251
  Get the number of stored words.
252
252
 
@@ -270,7 +270,7 @@ Word count.
270
270
  get toElementFn(): ((rawElement) => E) | undefined;
271
271
  ```
272
272
 
273
- 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)
273
+ 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)
274
274
 
275
275
  Exposes the current `toElementFn`, if configured.
276
276
 
@@ -296,7 +296,7 @@ The converter function or `undefined` when not set.
296
296
  iterator: IterableIterator<string>;
297
297
  ```
298
298
 
299
- 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)
299
+ 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)
300
300
 
301
301
  Returns an iterator over the structure's elements.
302
302
 
@@ -330,7 +330,7 @@ Producing the iterator is O(1); consuming the entire iterator is Time O(n) with
330
330
  add(word): boolean;
331
331
  ```
332
332
 
333
- Defined in: [data-structures/trie/trie.ts:339](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L339)
333
+ Defined in: [data-structures/trie/trie.ts:343](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L343)
334
334
 
335
335
  Insert one word into the trie.
336
336
 
@@ -381,7 +381,7 @@ Time O(L), Space O(L)
381
381
  addMany(words): boolean[];
382
382
  ```
383
383
 
384
- Defined in: [data-structures/trie/trie.ts:405](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L405)
384
+ Defined in: [data-structures/trie/trie.ts:413](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L413)
385
385
 
386
386
  Insert many words from an iterable.
387
387
 
@@ -424,7 +424,7 @@ Time O(ΣL), Space O(ΣL)
424
424
  clear(): void;
425
425
  ```
426
426
 
427
- Defined in: [data-structures/trie/trie.ts:568](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L568)
427
+ Defined in: [data-structures/trie/trie.ts:588](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L588)
428
428
 
429
429
  Remove all words and reset to a fresh root.
430
430
 
@@ -461,7 +461,7 @@ Time O(1), Space O(1)
461
461
  clone(): this;
462
462
  ```
463
463
 
464
- Defined in: [data-structures/trie/trie.ts:985](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L985)
464
+ Defined in: [data-structures/trie/trie.ts:1025](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1025)
465
465
 
466
466
  Deep clone this trie by iterating and inserting all words.
467
467
 
@@ -499,7 +499,7 @@ Time O(ΣL), Space O(ΣL)
499
499
  delete(word): boolean;
500
500
  ```
501
501
 
502
- Defined in: [data-structures/trie/trie.ts:632](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L632)
502
+ Defined in: [data-structures/trie/trie.ts:656](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L656)
503
503
 
504
504
  Delete one word if present.
505
505
 
@@ -552,7 +552,7 @@ Time O(L), Space O(1)
552
552
  every(predicate, thisArg?): boolean;
553
553
  ```
554
554
 
555
- 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)
555
+ 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)
556
556
 
557
557
  Tests whether all elements satisfy the predicate.
558
558
 
@@ -592,7 +592,7 @@ Time O(n) in the worst case; may exit early when the first failure is found. Spa
592
592
  filter(predicate, thisArg?): this;
593
593
  ```
594
594
 
595
- Defined in: [data-structures/trie/trie.ts:1036](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1036)
595
+ Defined in: [data-structures/trie/trie.ts:1080](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1080)
596
596
 
597
597
  Filter words into a new trie of the same class.
598
598
 
@@ -645,7 +645,7 @@ Time O(ΣL), Space O(ΣL)
645
645
  find<S>(predicate, thisArg?): S | undefined;
646
646
  ```
647
647
 
648
- 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)
648
+ 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)
649
649
 
650
650
  Finds the first element that satisfies the predicate and returns it.
651
651
 
@@ -691,7 +691,7 @@ Time O(n) in the worst case; may exit early on the first match. Space O(1).
691
691
  find(predicate, thisArg?): string | undefined;
692
692
  ```
693
693
 
694
- 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)
694
+ 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)
695
695
 
696
696
  Finds the first element that satisfies the predicate and returns it.
697
697
 
@@ -733,7 +733,7 @@ Time O(n) in the worst case; may exit early on the first match. Space O(1).
733
733
  forEach(callbackfn, thisArg?): void;
734
734
  ```
735
735
 
736
- 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)
736
+ 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)
737
737
 
738
738
  Invokes a callback for each element in iteration order.
739
739
 
@@ -773,7 +773,7 @@ Time O(n), Space O(1).
773
773
  getHeight(): number;
774
774
  ```
775
775
 
776
- Defined in: [data-structures/trie/trie.ts:674](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L674)
776
+ Defined in: [data-structures/trie/trie.ts:698](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L698)
777
777
 
778
778
  Compute the height (max depth) of the trie.
779
779
 
@@ -795,7 +795,7 @@ Time O(N), Space O(H)
795
795
  getLongestCommonPrefix(): string;
796
796
  ```
797
797
 
798
- Defined in: [data-structures/trie/trie.ts:839](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L839)
798
+ Defined in: [data-structures/trie/trie.ts:871](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L871)
799
799
 
800
800
  Return the longest common prefix among all words.
801
801
 
@@ -831,7 +831,7 @@ getWords(
831
831
  isAllWhenEmptyPrefix?): string[];
832
832
  ```
833
833
 
834
- Defined in: [data-structures/trie/trie.ts:906](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L906)
834
+ Defined in: [data-structures/trie/trie.ts:942](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L942)
835
835
 
836
836
  Collect words under a prefix up to a maximum count.
837
837
 
@@ -890,7 +890,7 @@ Time O(K·L), Space O(K·L)
890
890
  has(word): boolean;
891
891
  ```
892
892
 
893
- Defined in: [data-structures/trie/trie.ts:466](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L466)
893
+ Defined in: [data-structures/trie/trie.ts:478](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L478)
894
894
 
895
895
  Check whether a word exists.
896
896
 
@@ -937,7 +937,7 @@ Time O(L), Space O(1)
937
937
  hasCommonPrefix(input): boolean;
938
938
  ```
939
939
 
940
- Defined in: [data-structures/trie/trie.ts:779](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L779)
940
+ Defined in: [data-structures/trie/trie.ts:807](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L807)
941
941
 
942
942
  Check whether the trie’s longest common prefix equals input.
943
943
 
@@ -967,7 +967,7 @@ Time O(min(H,L)), Space O(1)
967
967
  hasPrefix(input): boolean;
968
968
  ```
969
969
 
970
- Defined in: [data-structures/trie/trie.ts:761](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L761)
970
+ Defined in: [data-structures/trie/trie.ts:789](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L789)
971
971
 
972
972
  Check whether any word starts with input.
973
973
 
@@ -1010,7 +1010,7 @@ Time O(L), Space O(1)
1010
1010
  hasPurePrefix(input): boolean;
1011
1011
  ```
1012
1012
 
1013
- Defined in: [data-structures/trie/trie.ts:701](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L701)
1013
+ Defined in: [data-structures/trie/trie.ts:725](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L725)
1014
1014
 
1015
1015
  Check whether input is a proper prefix of at least one word.
1016
1016
 
@@ -1040,7 +1040,7 @@ Time O(L), Space O(1)
1040
1040
  isEmpty(): boolean;
1041
1041
  ```
1042
1042
 
1043
- Defined in: [data-structures/trie/trie.ts:521](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L521)
1043
+ Defined in: [data-structures/trie/trie.ts:537](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L537)
1044
1044
 
1045
1045
  Check whether the trie is empty.
1046
1046
 
@@ -1083,7 +1083,7 @@ map<RM>(
1083
1083
  thisArg?): Trie<RM>;
1084
1084
  ```
1085
1085
 
1086
- Defined in: [data-structures/trie/trie.ts:1088](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1088)
1086
+ Defined in: [data-structures/trie/trie.ts:1136](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1136)
1087
1087
 
1088
1088
  Transform words
1089
1089
 
@@ -1135,7 +1135,7 @@ map<EM, RM>(
1135
1135
  thisArg?): IterableElementBase<EM, RM>;
1136
1136
  ```
1137
1137
 
1138
- Defined in: [data-structures/trie/trie.ts:1101](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1101)
1138
+ Defined in: [data-structures/trie/trie.ts:1149](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1149)
1139
1139
 
1140
1140
  Map words into a new trie (possibly different record type).
1141
1141
 
@@ -1193,7 +1193,7 @@ IterableElementBase.map
1193
1193
  mapSame(callback, thisArg?): this;
1194
1194
  ```
1195
1195
 
1196
- Defined in: [data-structures/trie/trie.ts:1128](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1128)
1196
+ Defined in: [data-structures/trie/trie.ts:1176](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1176)
1197
1197
 
1198
1198
  Map words into a new trie of the same element type.
1199
1199
 
@@ -1233,7 +1233,7 @@ Time O(ΣL), Space O(ΣL)
1233
1233
  print(): void;
1234
1234
  ```
1235
1235
 
1236
- 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)
1236
+ 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)
1237
1237
 
1238
1238
  Prints `toVisual()` to the console. Intended for quick debugging.
1239
1239
 
@@ -1291,7 +1291,7 @@ Time O(n), Space O(1). Throws if called on an empty structure without `initialVa
1291
1291
  reduce(callbackfn): string;
1292
1292
  ```
1293
1293
 
1294
- 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)
1294
+ 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)
1295
1295
 
1296
1296
  ##### Parameters
1297
1297
 
@@ -1313,7 +1313,7 @@ Defined in: [data-structures/base/iterable-element-base.ts:194](https://github.c
1313
1313
  reduce(callbackfn, initialValue): string;
1314
1314
  ```
1315
1315
 
1316
- 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)
1316
+ 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)
1317
1317
 
1318
1318
  ##### Parameters
1319
1319
 
@@ -1339,7 +1339,7 @@ Defined in: [data-structures/base/iterable-element-base.ts:195](https://github.c
1339
1339
  reduce<U>(callbackfn, initialValue): U;
1340
1340
  ```
1341
1341
 
1342
- 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)
1342
+ 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)
1343
1343
 
1344
1344
  ##### Type Parameters
1345
1345
 
@@ -1373,7 +1373,7 @@ Defined in: [data-structures/base/iterable-element-base.ts:196](https://github.c
1373
1373
  some(predicate, thisArg?): boolean;
1374
1374
  ```
1375
1375
 
1376
- 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)
1376
+ 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)
1377
1377
 
1378
1378
  Tests whether at least one element satisfies the predicate.
1379
1379
 
@@ -1413,7 +1413,7 @@ Time O(n) in the worst case; may exit early on first success. Space O(1).
1413
1413
  toArray(): string[];
1414
1414
  ```
1415
1415
 
1416
- 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)
1416
+ 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)
1417
1417
 
1418
1418
  Materializes the elements into a new array.
1419
1419
 
@@ -1439,7 +1439,7 @@ Time O(n), Space O(n).
1439
1439
  toVisual(): string[];
1440
1440
  ```
1441
1441
 
1442
- 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)
1442
+ 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)
1443
1443
 
1444
1444
  Returns a representation of the structure suitable for quick visualization.
1445
1445
  Defaults to an array of elements; subclasses may override to provide richer visuals.
@@ -1466,7 +1466,7 @@ Time O(n), Space O(n).
1466
1466
  values(): IterableIterator<string>;
1467
1467
  ```
1468
1468
 
1469
- 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)
1469
+ 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)
1470
1470
 
1471
1471
  Returns an iterator over the values (alias of the default iterator).
1472
1472
 
@@ -1495,7 +1495,7 @@ Creating the iterator is O(1); full iteration is Time O(n), Space O(1).
1495
1495
  protected optional _toElementFn?: (rawElement) => string;
1496
1496
  ```
1497
1497
 
1498
- 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)
1498
+ 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)
1499
1499
 
1500
1500
  The converter used to transform a raw element (`R`) into a public element (`E`).
1501
1501
 
@@ -1527,7 +1527,7 @@ Time O(1), Space O(1).
1527
1527
  get protected _total(): number;
1528
1528
  ```
1529
1529
 
1530
- Defined in: [data-structures/trie/trie.ts:278](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L278)
1530
+ Defined in: [data-structures/trie/trie.ts:278](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L278)
1531
1531
 
1532
1532
  (Protected) Get total count for base class iteration.
1533
1533
 
@@ -1549,7 +1549,7 @@ Total number of elements.
1549
1549
  protected _caseProcess(str): string;
1550
1550
  ```
1551
1551
 
1552
- Defined in: [data-structures/trie/trie.ts:1212](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1212)
1552
+ Defined in: [data-structures/trie/trie.ts:1260](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1260)
1553
1553
 
1554
1554
  (Protected) Normalize a string according to case sensitivity.
1555
1555
 
@@ -1579,7 +1579,7 @@ Time O(L), Space O(L)
1579
1579
  protected _createInstance(options?): this;
1580
1580
  ```
1581
1581
 
1582
- Defined in: [data-structures/trie/trie.ts:1145](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1145)
1582
+ Defined in: [data-structures/trie/trie.ts:1193](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1193)
1583
1583
 
1584
1584
  (Protected) Create an empty instance of the same concrete class.
1585
1585
 
@@ -1609,7 +1609,7 @@ Time O(1), Space O(1)
1609
1609
  protected _createLike<RM>(elements?, options?): Trie<RM>;
1610
1610
  ```
1611
1611
 
1612
- Defined in: [data-structures/trie/trie.ts:1166](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1166)
1612
+ Defined in: [data-structures/trie/trie.ts:1214](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1214)
1613
1613
 
1614
1614
  (Protected) Create a like-kind trie and seed it from an iterable.
1615
1615
 
@@ -1651,7 +1651,7 @@ Time O(ΣL), Space O(ΣL)
1651
1651
  protected _getIterator(): IterableIterator<string>;
1652
1652
  ```
1653
1653
 
1654
- Defined in: [data-structures/trie/trie.ts:1192](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1192)
1654
+ Defined in: [data-structures/trie/trie.ts:1240](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1240)
1655
1655
 
1656
1656
  (Protected) Iterate all words in lexicographic order of edges.
1657
1657
 
@@ -1677,7 +1677,7 @@ Time O(ΣL), Space O(H)
1677
1677
  protected _spawnLike<RM>(options?): Trie<RM>;
1678
1678
  ```
1679
1679
 
1680
- Defined in: [data-structures/trie/trie.ts:1182](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L1182)
1680
+ Defined in: [data-structures/trie/trie.ts:1230](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L1230)
1681
1681
 
1682
1682
  (Protected) Spawn an empty like-kind trie instance.
1683
1683
 
@@ -6,7 +6,7 @@
6
6
 
7
7
  # Class: TrieNode
8
8
 
9
- Defined in: [data-structures/trie/trie.ts:17](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L17)
9
+ Defined in: [data-structures/trie/trie.ts:17](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L17)
10
10
 
11
11
  Node used by Trie to store one character and its children.
12
12
 
@@ -22,7 +22,7 @@ Time O(1), Space O(1)
22
22
  new TrieNode(key): TrieNode;
23
23
  ```
24
24
 
25
- Defined in: [data-structures/trie/trie.ts:24](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L24)
25
+ Defined in: [data-structures/trie/trie.ts:24](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L24)
26
26
 
27
27
  Create a Trie node with a character key.
28
28
 
@@ -52,7 +52,7 @@ Time O(1), Space O(1)
52
52
  get children(): Map<string, TrieNode>;
53
53
  ```
54
54
 
55
- Defined in: [data-structures/trie/trie.ts:61](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L61)
55
+ Defined in: [data-structures/trie/trie.ts:61](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L61)
56
56
 
57
57
  Get the child map of this node.
58
58
 
@@ -72,7 +72,7 @@ Map from character to child node.
72
72
  set children(value): void;
73
73
  ```
74
74
 
75
- Defined in: [data-structures/trie/trie.ts:72](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L72)
75
+ Defined in: [data-structures/trie/trie.ts:72](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L72)
76
76
 
77
77
  Replace the child map of this node.
78
78
 
@@ -104,7 +104,7 @@ void
104
104
  get isEnd(): boolean;
105
105
  ```
106
106
 
107
- Defined in: [data-structures/trie/trie.ts:84](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L84)
107
+ Defined in: [data-structures/trie/trie.ts:84](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L84)
108
108
 
109
109
  Check whether this node marks the end of a word.
110
110
 
@@ -124,7 +124,7 @@ True if this node ends a word.
124
124
  set isEnd(value): void;
125
125
  ```
126
126
 
127
- Defined in: [data-structures/trie/trie.ts:95](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L95)
127
+ Defined in: [data-structures/trie/trie.ts:95](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L95)
128
128
 
129
129
  Mark this node as the end of a word or not.
130
130
 
@@ -156,7 +156,7 @@ void
156
156
  get key(): string;
157
157
  ```
158
158
 
159
- Defined in: [data-structures/trie/trie.ts:38](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L38)
159
+ Defined in: [data-structures/trie/trie.ts:38](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L38)
160
160
 
161
161
  Get the character key of this node.
162
162
 
@@ -176,7 +176,7 @@ Character key string.
176
176
  set key(value): void;
177
177
  ```
178
178
 
179
- Defined in: [data-structures/trie/trie.ts:49](https://github.com/zrwusa/data-structure-typed/blob/8292cb978daf85ebe846186c7c7572aece04fb7b/src/data-structures/trie/trie.ts#L49)
179
+ Defined in: [data-structures/trie/trie.ts:49](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/trie/trie.ts#L49)
180
180
 
181
181
  Set the character key of this node.
182
182