data-structure-typed 2.5.2 → 2.6.0
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.
- package/.husky/pre-commit +3 -0
- package/CHANGELOG.md +3 -1
- package/MIGRATION.md +217 -0
- package/README.md +80 -8
- package/README_CN.md +569 -143
- package/SPECIFICATION.md +44 -14
- package/SPECIFICATION.zh-CN.md +44 -14
- package/dist/cjs/binary-tree.cjs +5841 -1678
- package/dist/cjs/graph.cjs +422 -14
- package/dist/cjs/hash.cjs +95 -7
- package/dist/cjs/heap.cjs +174 -16
- package/dist/cjs/index.cjs +7751 -2449
- package/dist/cjs/linked-list.cjs +443 -2
- package/dist/cjs/matrix.cjs +56 -0
- package/dist/cjs/priority-queue.cjs +172 -14
- package/dist/cjs/queue.cjs +435 -0
- package/dist/cjs/stack.cjs +103 -4
- package/dist/cjs/trie.cjs +106 -0
- package/dist/cjs-legacy/binary-tree.cjs +5933 -1772
- package/dist/cjs-legacy/graph.cjs +422 -14
- package/dist/cjs-legacy/hash.cjs +95 -7
- package/dist/cjs-legacy/heap.cjs +174 -16
- package/dist/cjs-legacy/index.cjs +8154 -2854
- package/dist/cjs-legacy/linked-list.cjs +443 -2
- package/dist/cjs-legacy/matrix.cjs +56 -0
- package/dist/cjs-legacy/priority-queue.cjs +172 -14
- package/dist/cjs-legacy/queue.cjs +435 -0
- package/dist/cjs-legacy/stack.cjs +103 -4
- package/dist/cjs-legacy/trie.cjs +106 -0
- package/dist/esm/binary-tree.mjs +5841 -1678
- package/dist/esm/graph.mjs +422 -14
- package/dist/esm/hash.mjs +95 -7
- package/dist/esm/heap.mjs +174 -16
- package/dist/esm/index.mjs +7751 -2449
- package/dist/esm/linked-list.mjs +443 -2
- package/dist/esm/matrix.mjs +56 -0
- package/dist/esm/priority-queue.mjs +172 -14
- package/dist/esm/queue.mjs +435 -0
- package/dist/esm/stack.mjs +103 -4
- package/dist/esm/trie.mjs +106 -0
- package/dist/esm-legacy/binary-tree.mjs +5933 -1772
- package/dist/esm-legacy/graph.mjs +422 -14
- package/dist/esm-legacy/hash.mjs +95 -7
- package/dist/esm-legacy/heap.mjs +174 -16
- package/dist/esm-legacy/index.mjs +8154 -2854
- package/dist/esm-legacy/linked-list.mjs +443 -2
- package/dist/esm-legacy/matrix.mjs +56 -0
- package/dist/esm-legacy/priority-queue.mjs +172 -14
- package/dist/esm-legacy/queue.mjs +435 -0
- package/dist/esm-legacy/stack.mjs +103 -4
- package/dist/esm-legacy/trie.mjs +106 -0
- package/dist/types/data-structures/base/iterable-element-base.d.ts +17 -0
- package/dist/types/data-structures/base/linear-base.d.ts +6 -0
- package/dist/types/data-structures/binary-tree/avl-tree.d.ts +86 -2
- package/dist/types/data-structures/binary-tree/binary-indexed-tree.d.ts +98 -0
- package/dist/types/data-structures/binary-tree/binary-tree.d.ts +191 -15
- package/dist/types/data-structures/binary-tree/bst.d.ts +171 -3
- package/dist/types/data-structures/binary-tree/red-black-tree.d.ts +136 -8
- package/dist/types/data-structures/binary-tree/segment-tree.d.ts +42 -0
- package/dist/types/data-structures/binary-tree/tree-map.d.ts +1061 -167
- package/dist/types/data-structures/binary-tree/tree-multi-map.d.ts +1232 -355
- package/dist/types/data-structures/binary-tree/tree-multi-set.d.ts +916 -194
- package/dist/types/data-structures/binary-tree/tree-set.d.ts +1078 -141
- package/dist/types/data-structures/graph/directed-graph.d.ts +70 -0
- package/dist/types/data-structures/graph/undirected-graph.d.ts +63 -0
- package/dist/types/data-structures/hash/hash-map.d.ts +84 -6
- package/dist/types/data-structures/heap/heap.d.ts +140 -12
- package/dist/types/data-structures/linked-list/doubly-linked-list.d.ts +150 -2
- package/dist/types/data-structures/linked-list/singly-linked-list.d.ts +106 -1
- package/dist/types/data-structures/linked-list/skip-linked-list.d.ts +126 -0
- package/dist/types/data-structures/matrix/matrix.d.ts +56 -0
- package/dist/types/data-structures/queue/deque.d.ts +171 -0
- package/dist/types/data-structures/queue/queue.d.ts +97 -0
- package/dist/types/data-structures/stack/stack.d.ts +72 -2
- package/dist/types/data-structures/trie/trie.d.ts +84 -0
- package/dist/types/interfaces/binary-tree.d.ts +2 -3
- package/dist/umd/data-structure-typed.js +7784 -2484
- package/dist/umd/data-structure-typed.min.js +4 -4
- package/docs-site-docusaurus/docs/api/classes/AVLTree.md +188 -200
- package/docs-site-docusaurus/docs/api/classes/AVLTreeNode.md +11 -11
- package/docs-site-docusaurus/docs/api/classes/AbstractGraph.md +62 -62
- package/docs-site-docusaurus/docs/api/classes/BST.md +183 -195
- package/docs-site-docusaurus/docs/api/classes/BSTNode.md +13 -13
- package/docs-site-docusaurus/docs/api/classes/BinaryIndexedTree.md +15 -15
- package/docs-site-docusaurus/docs/api/classes/BinaryTree.md +143 -155
- package/docs-site-docusaurus/docs/api/classes/BinaryTreeNode.md +13 -13
- package/docs-site-docusaurus/docs/api/classes/Deque.md +99 -85
- package/docs-site-docusaurus/docs/api/classes/DirectedGraph.md +73 -73
- package/docs-site-docusaurus/docs/api/classes/DoublyLinkedList.md +100 -70
- package/docs-site-docusaurus/docs/api/classes/DoublyLinkedListNode.md +8 -8
- package/docs-site-docusaurus/docs/api/classes/FibonacciHeap.md +12 -12
- package/docs-site-docusaurus/docs/api/classes/FibonacciHeapNode.md +1 -1
- package/docs-site-docusaurus/docs/api/classes/HashMap.md +38 -38
- package/docs-site-docusaurus/docs/api/classes/Heap.md +96 -85
- package/docs-site-docusaurus/docs/api/classes/IterableElementBase.md +25 -25
- package/docs-site-docusaurus/docs/api/classes/IterableEntryBase.md +23 -23
- package/docs-site-docusaurus/docs/api/classes/LinearBase.md +48 -48
- package/docs-site-docusaurus/docs/api/classes/LinearLinkedBase.md +52 -52
- package/docs-site-docusaurus/docs/api/classes/LinkedHashMap.md +46 -42
- package/docs-site-docusaurus/docs/api/classes/LinkedListNode.md +6 -6
- package/docs-site-docusaurus/docs/api/classes/LinkedListQueue.md +74 -74
- package/docs-site-docusaurus/docs/api/classes/MapGraph.md +73 -73
- package/docs-site-docusaurus/docs/api/classes/Matrix.md +31 -31
- package/docs-site-docusaurus/docs/api/classes/MaxHeap.md +104 -89
- package/docs-site-docusaurus/docs/api/classes/MaxPriorityQueue.md +104 -89
- package/docs-site-docusaurus/docs/api/classes/MinHeap.md +104 -89
- package/docs-site-docusaurus/docs/api/classes/MinPriorityQueue.md +104 -89
- package/docs-site-docusaurus/docs/api/classes/Navigator.md +5 -5
- package/docs-site-docusaurus/docs/api/classes/PriorityQueue.md +103 -88
- package/docs-site-docusaurus/docs/api/classes/Queue.md +111 -59
- package/docs-site-docusaurus/docs/api/classes/RedBlackTree.md +200 -212
- package/docs-site-docusaurus/docs/api/classes/SegmentTree.md +10 -10
- package/docs-site-docusaurus/docs/api/classes/SinglyLinkedList.md +75 -75
- package/docs-site-docusaurus/docs/api/classes/SinglyLinkedListNode.md +6 -6
- package/docs-site-docusaurus/docs/api/classes/SkipList.md +37 -37
- package/docs-site-docusaurus/docs/api/classes/Stack.md +42 -42
- package/docs-site-docusaurus/docs/api/classes/TreeMap.md +107 -36
- package/docs-site-docusaurus/docs/api/classes/TreeMultiMap.md +43 -43
- package/docs-site-docusaurus/docs/api/classes/TreeSet.md +106 -35
- package/docs-site-docusaurus/docs/api/classes/Trie.md +43 -43
- package/docs-site-docusaurus/docs/api/classes/TrieNode.md +8 -8
- package/docs-site-docusaurus/docs/api/classes/UndirectedGraph.md +72 -72
- package/docs-site-docusaurus/docs/guide/architecture.md +75 -7
- package/docs-site-docusaurus/docs/guide/concepts.md +53 -34
- package/docs-site-docusaurus/docs/guide/faq.md +53 -0
- package/docs-site-docusaurus/docs/guide/guides.md +8 -9
- package/docs-site-docusaurus/docs/guide/integrations.md +74 -177
- package/docs-site-docusaurus/docs/guide/overview.md +131 -17
- package/docs-site-docusaurus/src/pages/index.tsx +4 -0
- package/docs-site-docusaurus/typedoc.json +1 -0
- package/jest.integration.config.js +1 -2
- package/package.json +10 -7
- package/src/data-structures/base/iterable-element-base.ts +32 -0
- package/src/data-structures/base/linear-base.ts +11 -0
- package/src/data-structures/binary-tree/avl-tree.ts +88 -5
- package/src/data-structures/binary-tree/binary-indexed-tree.ts +98 -0
- package/src/data-structures/binary-tree/binary-tree.ts +242 -81
- package/src/data-structures/binary-tree/bst.ts +173 -7
- package/src/data-structures/binary-tree/red-black-tree.ts +139 -15
- package/src/data-structures/binary-tree/segment-tree.ts +42 -0
- package/src/data-structures/binary-tree/tree-map.ts +948 -36
- package/src/data-structures/binary-tree/tree-multi-map.ts +893 -13
- package/src/data-structures/binary-tree/tree-multi-set.ts +761 -33
- package/src/data-structures/binary-tree/tree-set.ts +1260 -251
- package/src/data-structures/graph/directed-graph.ts +71 -1
- package/src/data-structures/graph/undirected-graph.ts +64 -1
- package/src/data-structures/hash/hash-map.ts +100 -12
- package/src/data-structures/heap/heap.ts +149 -19
- package/src/data-structures/linked-list/doubly-linked-list.ts +178 -2
- package/src/data-structures/linked-list/singly-linked-list.ts +106 -1
- package/src/data-structures/linked-list/skip-linked-list.ts +126 -0
- package/src/data-structures/matrix/matrix.ts +56 -0
- package/src/data-structures/queue/deque.ts +187 -0
- package/src/data-structures/queue/queue.ts +109 -0
- package/src/data-structures/stack/stack.ts +75 -5
- package/src/data-structures/trie/trie.ts +84 -0
- package/src/interfaces/binary-tree.ts +1 -9
- package/.vitepress/cache/deps_temp_51f5f1b0/chunk-7OIKW5WK.js +0 -12984
- package/.vitepress/cache/deps_temp_51f5f1b0/package.json +0 -3
- package/.vitepress/cache/deps_temp_51f5f1b0/vitepress___@vue_devtools-api.js +0 -4505
- package/.vitepress/cache/deps_temp_51f5f1b0/vitepress___@vueuse_core.js +0 -9731
- package/.vitepress/cache/deps_temp_51f5f1b0/vue.js +0 -347
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Class: BSTNode\<K, V\>
|
|
8
8
|
|
|
9
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
9
|
+
Defined in: [data-structures/binary-tree/bst.ts:36](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L36)
|
|
10
10
|
|
|
11
11
|
Represents a Node in a Binary Search Tree.
|
|
12
12
|
|
|
@@ -32,7 +32,7 @@ The type of the value.
|
|
|
32
32
|
new BSTNode<K, V>(key, value?): BSTNode<K, V>;
|
|
33
33
|
```
|
|
34
34
|
|
|
35
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
35
|
+
Defined in: [data-structures/binary-tree/bst.ts:48](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L48)
|
|
36
36
|
|
|
37
37
|
Creates an instance of BSTNode.
|
|
38
38
|
|
|
@@ -68,7 +68,7 @@ Time O(1), Space O(1)
|
|
|
68
68
|
get color(): RBTNColor;
|
|
69
69
|
```
|
|
70
70
|
|
|
71
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
71
|
+
Defined in: [data-structures/binary-tree/bst.ts:132](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L132)
|
|
72
72
|
|
|
73
73
|
Gets the color of the node (used in Red-Black trees).
|
|
74
74
|
|
|
@@ -88,7 +88,7 @@ The node's color.
|
|
|
88
88
|
set color(value): void;
|
|
89
89
|
```
|
|
90
90
|
|
|
91
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
91
|
+
Defined in: [data-structures/binary-tree/bst.ts:143](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L143)
|
|
92
92
|
|
|
93
93
|
Sets the color of the node.
|
|
94
94
|
|
|
@@ -118,7 +118,7 @@ The new color.
|
|
|
118
118
|
get count(): number;
|
|
119
119
|
```
|
|
120
120
|
|
|
121
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
121
|
+
Defined in: [data-structures/binary-tree/bst.ts:156](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L156)
|
|
122
122
|
|
|
123
123
|
Gets the count of nodes in the subtree rooted at this node (used in order-statistic trees).
|
|
124
124
|
|
|
@@ -138,7 +138,7 @@ The subtree node count.
|
|
|
138
138
|
set count(value): void;
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
141
|
+
Defined in: [data-structures/binary-tree/bst.ts:167](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L167)
|
|
142
142
|
|
|
143
143
|
Sets the count of nodes in the subtree.
|
|
144
144
|
|
|
@@ -168,7 +168,7 @@ The new count.
|
|
|
168
168
|
get familyPosition(): FamilyPosition;
|
|
169
169
|
```
|
|
170
170
|
|
|
171
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
171
|
+
Defined in: [data-structures/binary-tree/bst.ts:177](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L177)
|
|
172
172
|
|
|
173
173
|
Gets the position of the node relative to its parent.
|
|
174
174
|
|
|
@@ -192,7 +192,7 @@ The family position (e.g., 'ROOT', 'LEFT', 'RIGHT').
|
|
|
192
192
|
get height(): number;
|
|
193
193
|
```
|
|
194
194
|
|
|
195
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
195
|
+
Defined in: [data-structures/binary-tree/bst.ts:108](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L108)
|
|
196
196
|
|
|
197
197
|
Gets the height of the node (used in self-balancing trees).
|
|
198
198
|
|
|
@@ -212,7 +212,7 @@ The height.
|
|
|
212
212
|
set height(value): void;
|
|
213
213
|
```
|
|
214
214
|
|
|
215
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
215
|
+
Defined in: [data-structures/binary-tree/bst.ts:119](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L119)
|
|
216
216
|
|
|
217
217
|
Sets the height of the node.
|
|
218
218
|
|
|
@@ -242,7 +242,7 @@ The new height.
|
|
|
242
242
|
get left(): BSTNode<K, V> | null | undefined;
|
|
243
243
|
```
|
|
244
244
|
|
|
245
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
245
|
+
Defined in: [data-structures/binary-tree/bst.ts:61](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L61)
|
|
246
246
|
|
|
247
247
|
Gets the left child of the node.
|
|
248
248
|
|
|
@@ -262,7 +262,7 @@ The left child.
|
|
|
262
262
|
set left(v): void;
|
|
263
263
|
```
|
|
264
264
|
|
|
265
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
265
|
+
Defined in: [data-structures/binary-tree/bst.ts:71](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L71)
|
|
266
266
|
|
|
267
267
|
Sets the left child of the node and updates its parent reference.
|
|
268
268
|
|
|
@@ -292,7 +292,7 @@ The node to set as the left child.
|
|
|
292
292
|
get right(): BSTNode<K, V> | null | undefined;
|
|
293
293
|
```
|
|
294
294
|
|
|
295
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
295
|
+
Defined in: [data-structures/binary-tree/bst.ts:84](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L84)
|
|
296
296
|
|
|
297
297
|
Gets the right child of the node.
|
|
298
298
|
|
|
@@ -312,7 +312,7 @@ The right child.
|
|
|
312
312
|
set right(v): void;
|
|
313
313
|
```
|
|
314
314
|
|
|
315
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
315
|
+
Defined in: [data-structures/binary-tree/bst.ts:94](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L94)
|
|
316
316
|
|
|
317
317
|
Sets the right child of the node and updates its parent reference.
|
|
318
318
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Class: BinaryIndexedTree
|
|
8
8
|
|
|
9
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:30](https://github.com/zrwusa/data-structure-typed/blob/
|
|
9
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:30](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L30)
|
|
10
10
|
|
|
11
11
|
Binary Indexed Tree (Fenwick Tree).
|
|
12
12
|
|
|
@@ -40,7 +40,7 @@ bit.get(1); // point value at index 1 = 2
|
|
|
40
40
|
new BinaryIndexedTree(sizeOrElements): BinaryIndexedTree;
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:38](https://github.com/zrwusa/data-structure-typed/blob/
|
|
43
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:38](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L38)
|
|
44
44
|
|
|
45
45
|
Construct a BIT of given size (all zeros), or from an initial values array.
|
|
46
46
|
|
|
@@ -64,7 +64,7 @@ number of elements, or an array of initial values
|
|
|
64
64
|
iterator: IterableIterator<number>;
|
|
65
65
|
```
|
|
66
66
|
|
|
67
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
67
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:704](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L704)
|
|
68
68
|
|
|
69
69
|
Iterate over point values in index order.
|
|
70
70
|
|
|
@@ -86,7 +86,7 @@ Iterable.[iterator]
|
|
|
86
86
|
get(index): number;
|
|
87
87
|
```
|
|
88
88
|
|
|
89
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
89
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:305](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L305)
|
|
90
90
|
|
|
91
91
|
Get the point value at index (0-based).
|
|
92
92
|
Time: O(log n)
|
|
@@ -120,7 +120,7 @@ Time: O(log n)
|
|
|
120
120
|
lowerBound(sum): number;
|
|
121
121
|
```
|
|
122
122
|
|
|
123
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
123
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:564](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L564)
|
|
124
124
|
|
|
125
125
|
Find the smallest index i such that prefix sum [0..i] >= sum.
|
|
126
126
|
Requires all values to be non-negative (behavior undefined otherwise).
|
|
@@ -156,7 +156,7 @@ Time: O(log n)
|
|
|
156
156
|
query(index): number;
|
|
157
157
|
```
|
|
158
158
|
|
|
159
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
159
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:389](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L389)
|
|
160
160
|
|
|
161
161
|
Prefix sum query: returns sum of elements [0..index] (inclusive, 0-based).
|
|
162
162
|
Time: O(log n)
|
|
@@ -189,7 +189,7 @@ Time: O(log n)
|
|
|
189
189
|
queryRange(start, end): number;
|
|
190
190
|
```
|
|
191
191
|
|
|
192
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
192
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:472](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L472)
|
|
193
193
|
|
|
194
194
|
Range sum query: returns sum of elements [start..end] (inclusive, 0-based).
|
|
195
195
|
Time: O(log n)
|
|
@@ -226,7 +226,7 @@ Time: O(log n)
|
|
|
226
226
|
set(index, value): void;
|
|
227
227
|
```
|
|
228
228
|
|
|
229
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
229
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:220](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L220)
|
|
230
230
|
|
|
231
231
|
Point set: set the value at index to an absolute value (0-based).
|
|
232
232
|
Time: O(log n)
|
|
@@ -264,7 +264,7 @@ Time: O(log n)
|
|
|
264
264
|
toArray(): number[];
|
|
265
265
|
```
|
|
266
266
|
|
|
267
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
267
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:693](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L693)
|
|
268
268
|
|
|
269
269
|
Returns the point values as a plain array.
|
|
270
270
|
Time: O(n log n)
|
|
@@ -291,7 +291,7 @@ Time: O(n log n)
|
|
|
291
291
|
update(index, delta): void;
|
|
292
292
|
```
|
|
293
293
|
|
|
294
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
294
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:135](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L135)
|
|
295
295
|
|
|
296
296
|
Point update: add delta to the value at index (0-based).
|
|
297
297
|
Time: O(log n)
|
|
@@ -329,7 +329,7 @@ Time: O(log n)
|
|
|
329
329
|
upperBound(sum): number;
|
|
330
330
|
```
|
|
331
331
|
|
|
332
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
332
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:621](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L621)
|
|
333
333
|
|
|
334
334
|
Find the smallest index i such that prefix sum [0..i] > sum.
|
|
335
335
|
Requires all values to be non-negative (behavior undefined otherwise).
|
|
@@ -368,7 +368,7 @@ Time: O(log n)
|
|
|
368
368
|
protected _highBit(n): number;
|
|
369
369
|
```
|
|
370
370
|
|
|
371
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
371
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:774](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L774)
|
|
372
372
|
|
|
373
373
|
Returns highest power of 2 <= n.
|
|
374
374
|
|
|
@@ -390,7 +390,7 @@ Returns highest power of 2 <= n.
|
|
|
390
390
|
protected _pointQuery(pos): number;
|
|
391
391
|
```
|
|
392
392
|
|
|
393
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
393
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:753](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L753)
|
|
394
394
|
|
|
395
395
|
1-based point query: get exact value at pos.
|
|
396
396
|
|
|
@@ -412,7 +412,7 @@ Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:697](https://git
|
|
|
412
412
|
protected _pointUpdate(pos, delta): void;
|
|
413
413
|
```
|
|
414
414
|
|
|
415
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
415
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:745](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L745)
|
|
416
416
|
|
|
417
417
|
1-based point update: add delta to position pos.
|
|
418
418
|
|
|
@@ -438,7 +438,7 @@ Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:689](https://git
|
|
|
438
438
|
protected _prefixSum(pos): number;
|
|
439
439
|
```
|
|
440
440
|
|
|
441
|
-
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:
|
|
441
|
+
Defined in: [data-structures/binary-tree/binary-indexed-tree.ts:735](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-indexed-tree.ts#L735)
|
|
442
442
|
|
|
443
443
|
1-based prefix sum up to pos (inclusive).
|
|
444
444
|
|