data-structure-typed 2.6.0 → 2.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/ci.yml +7 -2
- package/.github/workflows/release-package.yml +9 -2
- package/docs-site-docusaurus/docs/api/classes/AVLTree.md +108 -108
- package/docs-site-docusaurus/docs/api/classes/BST.md +101 -101
- package/docs-site-docusaurus/docs/api/classes/BinaryIndexedTree.md +13 -13
- package/docs-site-docusaurus/docs/api/classes/BinaryTree.md +66 -66
- package/docs-site-docusaurus/docs/api/classes/Deque.md +235 -51
- package/docs-site-docusaurus/docs/api/classes/DirectedGraph.md +21 -21
- package/docs-site-docusaurus/docs/api/classes/DoublyLinkedList.md +231 -67
- package/docs-site-docusaurus/docs/api/classes/FibonacciHeap.md +9 -9
- package/docs-site-docusaurus/docs/api/classes/FibonacciHeapNode.md +1 -1
- package/docs-site-docusaurus/docs/api/classes/HashMap.md +14 -14
- package/docs-site-docusaurus/docs/api/classes/Heap.md +117 -34
- package/docs-site-docusaurus/docs/api/classes/IterableElementBase.md +83 -13
- package/docs-site-docusaurus/docs/api/classes/LinearBase.md +124 -20
- package/docs-site-docusaurus/docs/api/classes/LinearLinkedBase.md +140 -32
- package/docs-site-docusaurus/docs/api/classes/LinkedHashMap.md +23 -23
- package/docs-site-docusaurus/docs/api/classes/LinkedListQueue.md +159 -51
- package/docs-site-docusaurus/docs/api/classes/MapGraph.md +20 -20
- package/docs-site-docusaurus/docs/api/classes/Matrix.md +23 -23
- package/docs-site-docusaurus/docs/api/classes/MaxHeap.md +117 -34
- package/docs-site-docusaurus/docs/api/classes/MaxPriorityQueue.md +117 -34
- package/docs-site-docusaurus/docs/api/classes/MinHeap.md +117 -34
- package/docs-site-docusaurus/docs/api/classes/MinPriorityQueue.md +117 -34
- package/docs-site-docusaurus/docs/api/classes/PriorityQueue.md +117 -34
- package/docs-site-docusaurus/docs/api/classes/Queue.md +142 -34
- package/docs-site-docusaurus/docs/api/classes/RedBlackTree.md +117 -117
- package/docs-site-docusaurus/docs/api/classes/SegmentTree.md +8 -8
- package/docs-site-docusaurus/docs/api/classes/SinglyLinkedList.md +158 -50
- package/docs-site-docusaurus/docs/api/classes/SkipList.md +21 -21
- package/docs-site-docusaurus/docs/api/classes/Stack.md +108 -26
- package/docs-site-docusaurus/docs/api/classes/TreeMap.md +33 -33
- package/docs-site-docusaurus/docs/api/classes/TreeMultiMap.md +75 -39
- package/docs-site-docusaurus/docs/api/classes/TreeSet.md +301 -39
- package/docs-site-docusaurus/docs/api/classes/Trie.md +110 -28
- package/docs-site-docusaurus/docs/api/classes/UndirectedGraph.md +20 -20
- package/package.json +45 -46
- package/src/common/error.ts +15 -32
- package/src/common/index.ts +0 -3
- package/src/data-structures/base/iterable-element-base.ts +0 -3
- package/src/data-structures/base/linear-base.ts +2 -36
- package/src/data-structures/binary-tree/avl-tree.ts +31 -529
- package/src/data-structures/binary-tree/binary-indexed-tree.ts +47 -572
- package/src/data-structures/binary-tree/binary-tree.ts +326 -1311
- package/src/data-structures/binary-tree/bst.ts +158 -1082
- package/src/data-structures/binary-tree/red-black-tree.ts +451 -1290
- package/src/data-structures/binary-tree/segment-tree.ts +73 -351
- package/src/data-structures/binary-tree/tree-map.ts +462 -5124
- package/src/data-structures/binary-tree/tree-multi-map.ts +302 -4914
- package/src/data-structures/binary-tree/tree-multi-set.ts +284 -3972
- package/src/data-structures/binary-tree/tree-set.ts +338 -4836
- package/src/data-structures/graph/abstract-graph.ts +98 -167
- package/src/data-structures/graph/directed-graph.ts +137 -562
- package/src/data-structures/graph/map-graph.ts +0 -3
- package/src/data-structures/graph/undirected-graph.ts +132 -511
- package/src/data-structures/hash/hash-map.ts +154 -582
- package/src/data-structures/heap/heap.ts +200 -795
- package/src/data-structures/linked-list/doubly-linked-list.ts +121 -865
- package/src/data-structures/linked-list/singly-linked-list.ts +122 -794
- package/src/data-structures/linked-list/skip-linked-list.ts +211 -918
- package/src/data-structures/matrix/matrix.ts +179 -518
- package/src/data-structures/matrix/navigator.ts +0 -1
- package/src/data-structures/priority-queue/max-priority-queue.ts +1 -6
- package/src/data-structures/priority-queue/min-priority-queue.ts +6 -11
- package/src/data-structures/priority-queue/priority-queue.ts +1 -2
- package/src/data-structures/queue/deque.ts +214 -882
- package/src/data-structures/queue/queue.ts +102 -625
- package/src/data-structures/stack/stack.ts +76 -505
- package/src/data-structures/trie/trie.ts +98 -628
- package/src/types/common.ts +0 -10
- package/src/types/data-structures/binary-tree/bst.ts +0 -7
- package/src/types/data-structures/binary-tree/red-black-tree.ts +0 -1
- package/src/types/data-structures/graph/abstract-graph.ts +0 -2
- package/src/types/data-structures/hash/hash-map.ts +0 -3
- package/src/types/data-structures/hash/index.ts +0 -1
- package/src/types/data-structures/matrix/navigator.ts +0 -2
- package/src/types/utils/utils.ts +0 -7
- package/src/types/utils/validate-type.ts +0 -7
- package/src/utils/number.ts +0 -2
- package/src/utils/utils.ts +0 -5
|
@@ -532,7 +532,7 @@ IBinaryTree.[iterator]
|
|
|
532
532
|
add(keyNodeOrEntry): boolean;
|
|
533
533
|
```
|
|
534
534
|
|
|
535
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
535
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:615](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L615)
|
|
536
536
|
|
|
537
537
|
Adds a new node to the tree.
|
|
538
538
|
|
|
@@ -590,7 +590,7 @@ IBinaryTree.add
|
|
|
590
590
|
addMany(keysNodesEntriesOrRaws): boolean[];
|
|
591
591
|
```
|
|
592
592
|
|
|
593
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
593
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:802](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L802)
|
|
594
594
|
|
|
595
595
|
Adds multiple items to the tree.
|
|
596
596
|
|
|
@@ -671,7 +671,7 @@ The traversal method.
|
|
|
671
671
|
bfs(): (K | undefined)[];
|
|
672
672
|
```
|
|
673
673
|
|
|
674
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
674
|
+
Defined in: [data-structures/binary-tree/bst.ts:647](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L647)
|
|
675
675
|
|
|
676
676
|
BinaryTree level-order traversal
|
|
677
677
|
|
|
@@ -709,7 +709,7 @@ bfs<C>(
|
|
|
709
709
|
iterationType?): ReturnType<C>[];
|
|
710
710
|
```
|
|
711
711
|
|
|
712
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
712
|
+
Defined in: [data-structures/binary-tree/bst.ts:648](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L648)
|
|
713
713
|
|
|
714
714
|
BinaryTree level-order traversal
|
|
715
715
|
|
|
@@ -771,7 +771,7 @@ IBinaryTree.bfs
|
|
|
771
771
|
ceiling(keyNodeEntryOrPredicate): K | undefined;
|
|
772
772
|
```
|
|
773
773
|
|
|
774
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
774
|
+
Defined in: [data-structures/binary-tree/bst.ts:1900](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1900)
|
|
775
775
|
|
|
776
776
|
Returns the first key with a value >= target.
|
|
777
777
|
Equivalent to Java TreeMap.ceiling.
|
|
@@ -814,7 +814,7 @@ ceiling<C>(
|
|
|
814
814
|
iterationType?): ReturnType<C>;
|
|
815
815
|
```
|
|
816
816
|
|
|
817
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
817
|
+
Defined in: [data-structures/binary-tree/bst.ts:1915](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1915)
|
|
818
818
|
|
|
819
819
|
Returns the first node with a key >= target and applies callback.
|
|
820
820
|
Time Complexity: O(log n) average, O(h) worst case.
|
|
@@ -857,7 +857,7 @@ Space Complexity: O(h) for recursion, O(1) for iteration.
|
|
|
857
857
|
clear(): void;
|
|
858
858
|
```
|
|
859
859
|
|
|
860
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
860
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1579](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1579)
|
|
861
861
|
|
|
862
862
|
Clears the tree of all nodes and values.
|
|
863
863
|
|
|
@@ -898,7 +898,7 @@ IBinaryTree.clear
|
|
|
898
898
|
clone(): this;
|
|
899
899
|
```
|
|
900
900
|
|
|
901
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
901
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2837](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2837)
|
|
902
902
|
|
|
903
903
|
Clones the tree.
|
|
904
904
|
|
|
@@ -1028,7 +1028,7 @@ IBinaryTree.createTree
|
|
|
1028
1028
|
delete(keyNodeEntryRawOrPredicate): boolean;
|
|
1029
1029
|
```
|
|
1030
1030
|
|
|
1031
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
1031
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1057](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1057)
|
|
1032
1032
|
|
|
1033
1033
|
Deletes a node from the tree.
|
|
1034
1034
|
|
|
@@ -1085,7 +1085,7 @@ deleteWhere(
|
|
|
1085
1085
|
iterationType?): boolean;
|
|
1086
1086
|
```
|
|
1087
1087
|
|
|
1088
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
1088
|
+
Defined in: [data-structures/binary-tree/bst.ts:2764](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2764)
|
|
1089
1089
|
|
|
1090
1090
|
Deletes nodes that match a key, node, entry, predicate, or range.
|
|
1091
1091
|
|
|
@@ -1192,7 +1192,7 @@ The traversal method.
|
|
|
1192
1192
|
dfs(): (K | undefined)[];
|
|
1193
1193
|
```
|
|
1194
1194
|
|
|
1195
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
1195
|
+
Defined in: [data-structures/binary-tree/bst.ts:531](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L531)
|
|
1196
1196
|
|
|
1197
1197
|
Depth-first search traversal
|
|
1198
1198
|
|
|
@@ -1232,7 +1232,7 @@ dfs<C>(
|
|
|
1232
1232
|
iterationType?): ReturnType<C>[];
|
|
1233
1233
|
```
|
|
1234
1234
|
|
|
1235
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
1235
|
+
Defined in: [data-structures/binary-tree/bst.ts:533](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L533)
|
|
1236
1236
|
|
|
1237
1237
|
Depth-first search traversal
|
|
1238
1238
|
|
|
@@ -1422,7 +1422,7 @@ IBinaryTree.every
|
|
|
1422
1422
|
filter(predicate, thisArg?): this;
|
|
1423
1423
|
```
|
|
1424
1424
|
|
|
1425
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
1425
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2896](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2896)
|
|
1426
1426
|
|
|
1427
1427
|
Creates a new tree containing only the entries that satisfy the predicate.
|
|
1428
1428
|
|
|
@@ -1527,7 +1527,7 @@ IBinaryTree.find
|
|
|
1527
1527
|
floor(keyNodeEntryOrPredicate): K | undefined;
|
|
1528
1528
|
```
|
|
1529
1529
|
|
|
1530
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
1530
|
+
Defined in: [data-structures/binary-tree/bst.ts:2125](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2125)
|
|
1531
1531
|
|
|
1532
1532
|
Returns the first key with a value <= target.
|
|
1533
1533
|
Equivalent to Java TreeMap.floor.
|
|
@@ -1570,7 +1570,7 @@ floor<C>(
|
|
|
1570
1570
|
iterationType?): ReturnType<C>;
|
|
1571
1571
|
```
|
|
1572
1572
|
|
|
1573
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
1573
|
+
Defined in: [data-structures/binary-tree/bst.ts:2140](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2140)
|
|
1574
1574
|
|
|
1575
1575
|
Returns the first node with a key <= target and applies callback.
|
|
1576
1576
|
Time Complexity: O(log n) average, O(h) worst case.
|
|
@@ -1660,7 +1660,7 @@ get(
|
|
|
1660
1660
|
iterationType?): V | undefined;
|
|
1661
1661
|
```
|
|
1662
1662
|
|
|
1663
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
1663
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1405](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1405)
|
|
1664
1664
|
|
|
1665
1665
|
Gets the value associated with a key.
|
|
1666
1666
|
|
|
@@ -1732,7 +1732,7 @@ IBinaryTree.get
|
|
|
1732
1732
|
getByRank(k): K | undefined;
|
|
1733
1733
|
```
|
|
1734
1734
|
|
|
1735
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
1735
|
+
Defined in: [data-structures/binary-tree/bst.ts:1273](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1273)
|
|
1736
1736
|
|
|
1737
1737
|
Returns the element at the k-th position in tree order (0-indexed).
|
|
1738
1738
|
|
|
@@ -1775,7 +1775,7 @@ getByRank<C>(
|
|
|
1775
1775
|
iterationType?): ReturnType<C> | undefined;
|
|
1776
1776
|
```
|
|
1777
1777
|
|
|
1778
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
1778
|
+
Defined in: [data-structures/binary-tree/bst.ts:1284](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1284)
|
|
1779
1779
|
|
|
1780
1780
|
Returns the element at the k-th position in tree order and applies a callback.
|
|
1781
1781
|
|
|
@@ -1823,7 +1823,7 @@ Time O(log n), Space O(1) iterative / O(log n) recursive. Requires `enableOrderS
|
|
|
1823
1823
|
getDepth(dist, startNode?): number;
|
|
1824
1824
|
```
|
|
1825
1825
|
|
|
1826
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
1826
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1801](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1801)
|
|
1827
1827
|
|
|
1828
1828
|
Gets the depth of a node (distance from `startNode`).
|
|
1829
1829
|
|
|
@@ -1887,7 +1887,7 @@ IBinaryTree.getDepth
|
|
|
1887
1887
|
getHeight(startNode?, iterationType?): number;
|
|
1888
1888
|
```
|
|
1889
1889
|
|
|
1890
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
1890
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1872](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1872)
|
|
1891
1891
|
|
|
1892
1892
|
Gets the maximum height of the tree (longest path from startNode to a leaf).
|
|
1893
1893
|
|
|
@@ -1970,7 +1970,7 @@ The traversal method.
|
|
|
1970
1970
|
getLeftMost(): K | undefined;
|
|
1971
1971
|
```
|
|
1972
1972
|
|
|
1973
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
1973
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1999](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1999)
|
|
1974
1974
|
|
|
1975
1975
|
##### Returns
|
|
1976
1976
|
|
|
@@ -1995,7 +1995,7 @@ getLeftMost<C>(
|
|
|
1995
1995
|
iterationType?): ReturnType<C>;
|
|
1996
1996
|
```
|
|
1997
1997
|
|
|
1998
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
1998
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2001](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2001)
|
|
1999
1999
|
|
|
2000
2000
|
##### Type Parameters
|
|
2001
2001
|
|
|
@@ -2042,7 +2042,7 @@ IBinaryTree.getLeftMost
|
|
|
2042
2042
|
getMinHeight(startNode?, iterationType?): number;
|
|
2043
2043
|
```
|
|
2044
2044
|
|
|
2045
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2045
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1914](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1914)
|
|
2046
2046
|
|
|
2047
2047
|
Gets the minimum height of the tree (shortest path from startNode to a leaf).
|
|
2048
2048
|
|
|
@@ -2094,7 +2094,7 @@ getNode(
|
|
|
2094
2094
|
iterationType?): OptNode<BSTNode<K, V>>;
|
|
2095
2095
|
```
|
|
2096
2096
|
|
|
2097
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
2097
|
+
Defined in: [data-structures/binary-tree/bst.ts:884](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L884)
|
|
2098
2098
|
|
|
2099
2099
|
Gets the first node matching a predicate.
|
|
2100
2100
|
|
|
@@ -2167,7 +2167,7 @@ getNodes(
|
|
|
2167
2167
|
iterationType?): BinaryTreeNode<K, V>[];
|
|
2168
2168
|
```
|
|
2169
2169
|
|
|
2170
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2170
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1247](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1247)
|
|
2171
2171
|
|
|
2172
2172
|
Gets all nodes matching a predicate.
|
|
2173
2173
|
|
|
@@ -2262,7 +2262,7 @@ If true, returns the path from root-to-node.
|
|
|
2262
2262
|
getPathToRoot(beginNode): (K | undefined)[];
|
|
2263
2263
|
```
|
|
2264
2264
|
|
|
2265
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2265
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1961](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1961)
|
|
2266
2266
|
|
|
2267
2267
|
##### Parameters
|
|
2268
2268
|
|
|
@@ -2297,7 +2297,7 @@ getPathToRoot<C>(
|
|
|
2297
2297
|
isReverse?): ReturnType<C>[];
|
|
2298
2298
|
```
|
|
2299
2299
|
|
|
2300
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2300
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1965](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1965)
|
|
2301
2301
|
|
|
2302
2302
|
##### Type Parameters
|
|
2303
2303
|
|
|
@@ -2345,7 +2345,7 @@ IBinaryTree.getPathToRoot
|
|
|
2345
2345
|
getPredecessor(node): BinaryTreeNode<K, V>;
|
|
2346
2346
|
```
|
|
2347
2347
|
|
|
2348
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2348
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2099](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2099)
|
|
2349
2349
|
|
|
2350
2350
|
Gets the Morris traversal predecessor (rightmost node in the left subtree, or node itself).
|
|
2351
2351
|
|
|
@@ -2381,7 +2381,7 @@ This is primarily a helper for Morris traversal. Time O(H), where H is the heigh
|
|
|
2381
2381
|
getRank(keyNodeEntryOrPredicate): number;
|
|
2382
2382
|
```
|
|
2383
2383
|
|
|
2384
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
2384
|
+
Defined in: [data-structures/binary-tree/bst.ts:1328](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1328)
|
|
2385
2385
|
|
|
2386
2386
|
Returns the 0-based rank of a key (number of elements that precede it in tree order).
|
|
2387
2387
|
|
|
@@ -2415,7 +2415,7 @@ Tree order is defined by the comparator. When the key is not found, returns the
|
|
|
2415
2415
|
getRank(keyNodeEntryOrPredicate, iterationType): number;
|
|
2416
2416
|
```
|
|
2417
2417
|
|
|
2418
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
2418
|
+
Defined in: [data-structures/binary-tree/bst.ts:1346](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1346)
|
|
2419
2419
|
|
|
2420
2420
|
Returns the 0-based rank (number of preceding elements in tree order) with explicit iteration type.
|
|
2421
2421
|
|
|
@@ -2480,7 +2480,7 @@ The traversal method.
|
|
|
2480
2480
|
getRightMost(): K | undefined;
|
|
2481
2481
|
```
|
|
2482
2482
|
|
|
2483
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2483
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2046](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2046)
|
|
2484
2484
|
|
|
2485
2485
|
##### Returns
|
|
2486
2486
|
|
|
@@ -2505,7 +2505,7 @@ getRightMost<C>(
|
|
|
2505
2505
|
iterationType?): ReturnType<C>;
|
|
2506
2506
|
```
|
|
2507
2507
|
|
|
2508
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2508
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2048](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2048)
|
|
2509
2509
|
|
|
2510
2510
|
##### Type Parameters
|
|
2511
2511
|
|
|
@@ -2552,7 +2552,7 @@ IBinaryTree.getRightMost
|
|
|
2552
2552
|
getSuccessor(x?): BinaryTreeNode<K, V> | null | undefined;
|
|
2553
2553
|
```
|
|
2554
2554
|
|
|
2555
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2555
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2120](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2120)
|
|
2556
2556
|
|
|
2557
2557
|
Gets the in-order successor of a node in a BST.
|
|
2558
2558
|
|
|
@@ -2589,7 +2589,7 @@ has(
|
|
|
2589
2589
|
iterationType?): boolean;
|
|
2590
2590
|
```
|
|
2591
2591
|
|
|
2592
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2592
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1497](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1497)
|
|
2593
2593
|
|
|
2594
2594
|
Checks if a node matching the predicate exists in the tree.
|
|
2595
2595
|
|
|
@@ -2724,7 +2724,7 @@ IBinaryTree.hasValue
|
|
|
2724
2724
|
higher(keyNodeEntryOrPredicate): K | undefined;
|
|
2725
2725
|
```
|
|
2726
2726
|
|
|
2727
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
2727
|
+
Defined in: [data-structures/binary-tree/bst.ts:2012](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2012)
|
|
2728
2728
|
|
|
2729
2729
|
Returns the first key with a value > target.
|
|
2730
2730
|
Equivalent to Java TreeMap.higher.
|
|
@@ -2766,7 +2766,7 @@ higher<C>(
|
|
|
2766
2766
|
iterationType?): ReturnType<C>;
|
|
2767
2767
|
```
|
|
2768
2768
|
|
|
2769
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
2769
|
+
Defined in: [data-structures/binary-tree/bst.ts:2027](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2027)
|
|
2770
2770
|
|
|
2771
2771
|
Returns the first node with a key > target and applies callback.
|
|
2772
2772
|
Time Complexity: O(log n) average, O(h) worst case.
|
|
@@ -2809,7 +2809,7 @@ Space Complexity: O(h) for recursion, O(1) for iteration.
|
|
|
2809
2809
|
isAVLBalanced(iterationType?): boolean;
|
|
2810
2810
|
```
|
|
2811
2811
|
|
|
2812
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
2812
|
+
Defined in: [data-structures/binary-tree/bst.ts:2571](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2571)
|
|
2813
2813
|
|
|
2814
2814
|
Checks if the tree meets the AVL balance condition (height difference <= 1).
|
|
2815
2815
|
|
|
@@ -2849,7 +2849,7 @@ Time O(N), as it must visit every node to compute height. Space O(log N) for rec
|
|
|
2849
2849
|
isBST(startNode?, iterationType?): boolean;
|
|
2850
2850
|
```
|
|
2851
2851
|
|
|
2852
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2852
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1703](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1703)
|
|
2853
2853
|
|
|
2854
2854
|
Checks if the tree is a valid Binary Search Tree (BST).
|
|
2855
2855
|
|
|
@@ -2909,7 +2909,7 @@ IBinaryTree.isBST
|
|
|
2909
2909
|
isEmpty(): boolean;
|
|
2910
2910
|
```
|
|
2911
2911
|
|
|
2912
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
2912
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1633](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1633)
|
|
2913
2913
|
|
|
2914
2914
|
Checks if the tree is empty.
|
|
2915
2915
|
|
|
@@ -3102,7 +3102,7 @@ Time O(1), Space O(1)
|
|
|
3102
3102
|
isPerfectlyBalanced(startNode?): boolean;
|
|
3103
3103
|
```
|
|
3104
3104
|
|
|
3105
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
3105
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:1644](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L1644)
|
|
3106
3106
|
|
|
3107
3107
|
Checks if the tree is perfectly balanced.
|
|
3108
3108
|
|
|
@@ -3390,7 +3390,7 @@ The traversal method.
|
|
|
3390
3390
|
leaves(): (K | undefined)[];
|
|
3391
3391
|
```
|
|
3392
3392
|
|
|
3393
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
3393
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2435](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2435)
|
|
3394
3394
|
|
|
3395
3395
|
Get leaf nodes
|
|
3396
3396
|
|
|
@@ -3428,7 +3428,7 @@ leaves<C>(
|
|
|
3428
3428
|
iterationType?): ReturnType<C>[];
|
|
3429
3429
|
```
|
|
3430
3430
|
|
|
3431
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
3431
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2437](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2437)
|
|
3432
3432
|
|
|
3433
3433
|
Get leaf nodes
|
|
3434
3434
|
|
|
@@ -3516,7 +3516,7 @@ The traversal method.
|
|
|
3516
3516
|
lesserOrGreaterTraverse(): (K | undefined)[];
|
|
3517
3517
|
```
|
|
3518
3518
|
|
|
3519
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
3519
|
+
Defined in: [data-structures/binary-tree/bst.ts:2383](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2383)
|
|
3520
3520
|
|
|
3521
3521
|
##### Returns
|
|
3522
3522
|
|
|
@@ -3532,7 +3532,7 @@ lesserOrGreaterTraverse<C>(
|
|
|
3532
3532
|
iterationType?): ReturnType<C>[];
|
|
3533
3533
|
```
|
|
3534
3534
|
|
|
3535
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
3535
|
+
Defined in: [data-structures/binary-tree/bst.ts:2385](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2385)
|
|
3536
3536
|
|
|
3537
3537
|
##### Type Parameters
|
|
3538
3538
|
|
|
@@ -3597,7 +3597,7 @@ The traversal method.
|
|
|
3597
3597
|
listLevels(): (K | undefined)[][];
|
|
3598
3598
|
```
|
|
3599
3599
|
|
|
3600
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
3600
|
+
Defined in: [data-structures/binary-tree/bst.ts:762](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L762)
|
|
3601
3601
|
|
|
3602
3602
|
Level-order grouping
|
|
3603
3603
|
|
|
@@ -3638,7 +3638,7 @@ listLevels<C>(
|
|
|
3638
3638
|
iterationType?): ReturnType<C>[][];
|
|
3639
3639
|
```
|
|
3640
3640
|
|
|
3641
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
3641
|
+
Defined in: [data-structures/binary-tree/bst.ts:764](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L764)
|
|
3642
3642
|
|
|
3643
3643
|
Level-order grouping
|
|
3644
3644
|
|
|
@@ -3703,7 +3703,7 @@ IBinaryTree.listLevels
|
|
|
3703
3703
|
lower(keyNodeEntryOrPredicate): K | undefined;
|
|
3704
3704
|
```
|
|
3705
3705
|
|
|
3706
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
3706
|
+
Defined in: [data-structures/binary-tree/bst.ts:2280](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2280)
|
|
3707
3707
|
|
|
3708
3708
|
Returns the first key with a value < target.
|
|
3709
3709
|
Equivalent to Java TreeMap.lower.
|
|
@@ -3745,7 +3745,7 @@ lower<C>(
|
|
|
3745
3745
|
iterationType?): ReturnType<C>;
|
|
3746
3746
|
```
|
|
3747
3747
|
|
|
3748
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
3748
|
+
Defined in: [data-structures/binary-tree/bst.ts:2295](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2295)
|
|
3749
3749
|
|
|
3750
3750
|
Returns the first node with a key < target and applies callback.
|
|
3751
3751
|
Time Complexity: O(log n) average, O(h) worst case.
|
|
@@ -3791,7 +3791,7 @@ map<MK, MV, MR>(
|
|
|
3791
3791
|
thisArg?): BST<MK, MV, MR>;
|
|
3792
3792
|
```
|
|
3793
3793
|
|
|
3794
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
3794
|
+
Defined in: [data-structures/binary-tree/bst.ts:2714](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2714)
|
|
3795
3795
|
|
|
3796
3796
|
Creates a new BST by mapping each [key, value] pair to a new entry.
|
|
3797
3797
|
|
|
@@ -3875,7 +3875,7 @@ IBinaryTree.map
|
|
|
3875
3875
|
merge(anotherTree): void;
|
|
3876
3876
|
```
|
|
3877
3877
|
|
|
3878
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
3878
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:937](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L937)
|
|
3879
3879
|
|
|
3880
3880
|
Merges another tree into this one by seting all its nodes.
|
|
3881
3881
|
|
|
@@ -3949,7 +3949,7 @@ The node to start from.
|
|
|
3949
3949
|
morris(): (K | undefined)[];
|
|
3950
3950
|
```
|
|
3951
3951
|
|
|
3952
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
3952
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2667](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2667)
|
|
3953
3953
|
|
|
3954
3954
|
Morris traversal (O(1) space)
|
|
3955
3955
|
|
|
@@ -3987,7 +3987,7 @@ morris<C>(
|
|
|
3987
3987
|
startNode?): ReturnType<C>[];
|
|
3988
3988
|
```
|
|
3989
3989
|
|
|
3990
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
3990
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2669](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2669)
|
|
3991
3991
|
|
|
3992
3992
|
Morris traversal (O(1) space)
|
|
3993
3993
|
|
|
@@ -4047,7 +4047,7 @@ IBinaryTree.morris
|
|
|
4047
4047
|
perfectlyBalance(iterationType?): boolean;
|
|
4048
4048
|
```
|
|
4049
4049
|
|
|
4050
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4050
|
+
Defined in: [data-structures/binary-tree/bst.ts:2495](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2495)
|
|
4051
4051
|
|
|
4052
4052
|
Rebuilds the tree to be perfectly balanced.
|
|
4053
4053
|
|
|
@@ -4091,7 +4091,7 @@ Time O(N) (O(N) for DFS, O(N) for sorted build). Space O(N) for node array and r
|
|
|
4091
4091
|
print(options?, startNode?): void;
|
|
4092
4092
|
```
|
|
4093
4093
|
|
|
4094
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
4094
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3056](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3056)
|
|
4095
4095
|
|
|
4096
4096
|
Prints a visual representation of the tree to the console.
|
|
4097
4097
|
|
|
@@ -4144,7 +4144,7 @@ Time O(N) (via `toVisual`). Space O(N*H) or O(N^2) (via `toVisual`).
|
|
|
4144
4144
|
rangeByRank(start, end): (K | undefined)[];
|
|
4145
4145
|
```
|
|
4146
4146
|
|
|
4147
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4147
|
+
Defined in: [data-structures/binary-tree/bst.ts:1408](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1408)
|
|
4148
4148
|
|
|
4149
4149
|
Returns elements by position range in tree order (0-indexed, inclusive on both ends).
|
|
4150
4150
|
|
|
@@ -4182,7 +4182,7 @@ rangeByRank<C>(
|
|
|
4182
4182
|
iterationType?): ReturnType<C>[];
|
|
4183
4183
|
```
|
|
4184
4184
|
|
|
4185
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4185
|
+
Defined in: [data-structures/binary-tree/bst.ts:1420](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1420)
|
|
4186
4186
|
|
|
4187
4187
|
Returns elements by position range in tree order with callback and optional iteration type.
|
|
4188
4188
|
|
|
@@ -4264,7 +4264,7 @@ The traversal method.
|
|
|
4264
4264
|
rangeSearch(range): (K | undefined)[];
|
|
4265
4265
|
```
|
|
4266
4266
|
|
|
4267
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4267
|
+
Defined in: [data-structures/binary-tree/bst.ts:1227](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1227)
|
|
4268
4268
|
|
|
4269
4269
|
Find all keys in a range
|
|
4270
4270
|
|
|
@@ -4298,7 +4298,7 @@ rangeSearch<C>(
|
|
|
4298
4298
|
iterationType?): ReturnType<C>[];
|
|
4299
4299
|
```
|
|
4300
4300
|
|
|
4301
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4301
|
+
Defined in: [data-structures/binary-tree/bst.ts:1229](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1229)
|
|
4302
4302
|
|
|
4303
4303
|
Find all keys in a range
|
|
4304
4304
|
|
|
@@ -4437,7 +4437,7 @@ Whether to use 'RECURSIVE' or 'ITERATIVE' search.
|
|
|
4437
4437
|
search(keyNodeEntryOrPredicate, onlyOne?): (K | undefined)[];
|
|
4438
4438
|
```
|
|
4439
4439
|
|
|
4440
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4440
|
+
Defined in: [data-structures/binary-tree/bst.ts:1026](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1026)
|
|
4441
4441
|
|
|
4442
4442
|
Search nodes by predicate
|
|
4443
4443
|
|
|
@@ -4493,7 +4493,7 @@ search<C>(
|
|
|
4493
4493
|
iterationType?): ReturnType<C>[];
|
|
4494
4494
|
```
|
|
4495
4495
|
|
|
4496
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4496
|
+
Defined in: [data-structures/binary-tree/bst.ts:1038](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1038)
|
|
4497
4497
|
|
|
4498
4498
|
Search nodes by predicate
|
|
4499
4499
|
|
|
@@ -4567,7 +4567,7 @@ IBinaryTree.search
|
|
|
4567
4567
|
set(keyNodeOrEntry, value?): boolean;
|
|
4568
4568
|
```
|
|
4569
4569
|
|
|
4570
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4570
|
+
Defined in: [data-structures/binary-tree/bst.ts:1615](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1615)
|
|
4571
4571
|
|
|
4572
4572
|
Adds a new node to the BST based on key comparison.
|
|
4573
4573
|
|
|
@@ -4633,7 +4633,7 @@ setMany(
|
|
|
4633
4633
|
iterationType?): boolean[];
|
|
4634
4634
|
```
|
|
4635
4635
|
|
|
4636
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4636
|
+
Defined in: [data-structures/binary-tree/bst.ts:1754](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L1754)
|
|
4637
4637
|
|
|
4638
4638
|
Adds multiple items to the tree.
|
|
4639
4639
|
|
|
@@ -4771,7 +4771,7 @@ Time O(n), Space O(n)
|
|
|
4771
4771
|
toVisual(startNode?, options?): string;
|
|
4772
4772
|
```
|
|
4773
4773
|
|
|
4774
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
4774
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:2979](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L2979)
|
|
4775
4775
|
|
|
4776
4776
|
Generates a string representation of the tree for visualization.
|
|
4777
4777
|
|
|
@@ -4865,7 +4865,7 @@ Time O(1) Space O(1)
|
|
|
4865
4865
|
protected readonly _DEFAULT_NODE_CALLBACK: NodeCallback<BinaryTreeNode<K, V> | null | undefined, K | undefined>;
|
|
4866
4866
|
```
|
|
4867
4867
|
|
|
4868
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
4868
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3252](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3252)
|
|
4869
4869
|
|
|
4870
4870
|
(Protected) Default callback function, returns the node's key.
|
|
4871
4871
|
|
|
@@ -4896,7 +4896,7 @@ protected _bound(
|
|
|
4896
4896
|
iterationType): BSTNode<K, V> | undefined;
|
|
4897
4897
|
```
|
|
4898
4898
|
|
|
4899
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4899
|
+
Defined in: [data-structures/binary-tree/bst.ts:3065](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3065)
|
|
4900
4900
|
|
|
4901
4901
|
(Protected) Core bound search implementation supporting all parameter types.
|
|
4902
4902
|
Unified logic for both lowerBound and upperBound.
|
|
@@ -4944,7 +4944,7 @@ protected _boundByKey(
|
|
|
4944
4944
|
iterationType): BSTNode<K, V> | undefined;
|
|
4945
4945
|
```
|
|
4946
4946
|
|
|
4947
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4947
|
+
Defined in: [data-structures/binary-tree/bst.ts:3122](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3122)
|
|
4948
4948
|
|
|
4949
4949
|
(Protected) Binary search for bound by key with pruning optimization.
|
|
4950
4950
|
Performs standard BST binary search, choosing left or right subtree based on comparator result.
|
|
@@ -4985,7 +4985,7 @@ The first node matching the bound condition, or undefined if none exists.
|
|
|
4985
4985
|
protected _boundByPredicate(predicate, iterationType): BSTNode<K, V> | undefined;
|
|
4986
4986
|
```
|
|
4987
4987
|
|
|
4988
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
4988
|
+
Defined in: [data-structures/binary-tree/bst.ts:3177](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3177)
|
|
4989
4989
|
|
|
4990
4990
|
(Protected) In-order traversal search by predicate.
|
|
4991
4991
|
Falls back to linear in-order traversal when predicate-based search is required.
|
|
@@ -5021,7 +5021,7 @@ The first node satisfying predicate, or undefined if none found.
|
|
|
5021
5021
|
protected _clearNodes(): void;
|
|
5022
5022
|
```
|
|
5023
5023
|
|
|
5024
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5024
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3686](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3686)
|
|
5025
5025
|
|
|
5026
5026
|
(Protected) Clears all nodes from the tree.
|
|
5027
5027
|
|
|
@@ -5045,7 +5045,7 @@ Time O(1)
|
|
|
5045
5045
|
protected _clearValues(): void;
|
|
5046
5046
|
```
|
|
5047
5047
|
|
|
5048
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5048
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3695](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3695)
|
|
5049
5049
|
|
|
5050
5050
|
(Protected) Clears all values from the external store.
|
|
5051
5051
|
|
|
@@ -5069,7 +5069,7 @@ Time O(N)
|
|
|
5069
5069
|
protected _clone(cloned): void;
|
|
5070
5070
|
```
|
|
5071
5071
|
|
|
5072
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5072
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3345](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3345)
|
|
5073
5073
|
|
|
5074
5074
|
(Protected) Helper for cloning. Performs a BFS and sets all nodes to the new tree.
|
|
5075
5075
|
|
|
@@ -5101,7 +5101,7 @@ Time O(N * M) (O(N) BFS + O(M) `set` for each node).
|
|
|
5101
5101
|
protected _compare(a, b): number;
|
|
5102
5102
|
```
|
|
5103
5103
|
|
|
5104
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5104
|
+
Defined in: [data-structures/binary-tree/bst.ts:3441](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3441)
|
|
5105
5105
|
|
|
5106
5106
|
(Protected) Compares two keys using the tree's comparator and reverse setting.
|
|
5107
5107
|
|
|
@@ -5137,7 +5137,7 @@ Time O(1) Space O(1)
|
|
|
5137
5137
|
protected _createDefaultComparator(): Comparator<K>;
|
|
5138
5138
|
```
|
|
5139
5139
|
|
|
5140
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5140
|
+
Defined in: [data-structures/binary-tree/bst.ts:2792](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2792)
|
|
5141
5141
|
|
|
5142
5142
|
(Protected) Creates the default comparator function for keys that don't have a custom comparator.
|
|
5143
5143
|
|
|
@@ -5159,7 +5159,7 @@ Time O(1) Space O(1)
|
|
|
5159
5159
|
protected _createInstance<TK, TV, TR>(options?): this;
|
|
5160
5160
|
```
|
|
5161
5161
|
|
|
5162
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5162
|
+
Defined in: [data-structures/binary-tree/bst.ts:3239](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3239)
|
|
5163
5163
|
|
|
5164
5164
|
(Protected) Creates a new, empty instance of the same BST constructor.
|
|
5165
5165
|
|
|
@@ -5207,7 +5207,7 @@ Time O(1)
|
|
|
5207
5207
|
protected _createLike<TK, TV, TR>(iter?, options?): BST<TK, TV, TR>;
|
|
5208
5208
|
```
|
|
5209
5209
|
|
|
5210
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5210
|
+
Defined in: [data-structures/binary-tree/bst.ts:3256](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3256)
|
|
5211
5211
|
|
|
5212
5212
|
(Protected) Creates a new instance of the same BST constructor, potentially with different generic types.
|
|
5213
5213
|
|
|
@@ -5267,7 +5267,7 @@ Time O(N log N) or O(N^2) (from constructor) due to processing the iterable.
|
|
|
5267
5267
|
protected _deleteByKey(key): boolean;
|
|
5268
5268
|
```
|
|
5269
5269
|
|
|
5270
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5270
|
+
Defined in: [data-structures/binary-tree/bst.ts:3452](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3452)
|
|
5271
5271
|
|
|
5272
5272
|
(Private) Deletes a node by its key.
|
|
5273
5273
|
|
|
@@ -5297,7 +5297,7 @@ Standard BST deletion algorithm. Time O(log N), O(N) worst-case. Space O(1).
|
|
|
5297
5297
|
protected _deleteInternal(keyNodeEntryRawOrPredicate): BinaryTreeDeleteResult<BinaryTreeNode<K, V>>[];
|
|
5298
5298
|
```
|
|
5299
5299
|
|
|
5300
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5300
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:949](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L949)
|
|
5301
5301
|
|
|
5302
5302
|
**`Internal`**
|
|
5303
5303
|
|
|
@@ -5345,7 +5345,7 @@ protected _dfs<C>(
|
|
|
5345
5345
|
shouldProcessRoot?): ReturnType<C>[];
|
|
5346
5346
|
```
|
|
5347
5347
|
|
|
5348
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5348
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3063](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3063)
|
|
5349
5349
|
|
|
5350
5350
|
#### Type Parameters
|
|
5351
5351
|
|
|
@@ -5438,7 +5438,7 @@ Array of callback results.
|
|
|
5438
5438
|
protected _displayAux(node, options): NodeDisplayLayout;
|
|
5439
5439
|
```
|
|
5440
5440
|
|
|
5441
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5441
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3369](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3369)
|
|
5442
5442
|
|
|
5443
5443
|
(Protected) Recursive helper for `toVisual`.
|
|
5444
5444
|
|
|
@@ -5478,7 +5478,7 @@ Time O(N), Space O(N*H) or O(N^2)
|
|
|
5478
5478
|
protected _ensurePredicate(keyNodeEntryOrPredicate): NodePredicate<BinaryTreeNode<K, V>>;
|
|
5479
5479
|
```
|
|
5480
5480
|
|
|
5481
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5481
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3592](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3592)
|
|
5482
5482
|
|
|
5483
5483
|
(Protected) Converts a key, node, entry, or predicate into a standardized predicate function.
|
|
5484
5484
|
|
|
@@ -5517,7 +5517,7 @@ Time O(1)
|
|
|
5517
5517
|
protected _extractKey(keyNodeOrEntry): K | null | undefined;
|
|
5518
5518
|
```
|
|
5519
5519
|
|
|
5520
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5520
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3652](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3652)
|
|
5521
5521
|
|
|
5522
5522
|
(Protected) Extracts the key from a key, node, or entry.
|
|
5523
5523
|
|
|
@@ -5555,7 +5555,7 @@ Time O(1)
|
|
|
5555
5555
|
protected _floorByKey(key, iterationType): BSTNode<K, V> | undefined;
|
|
5556
5556
|
```
|
|
5557
5557
|
|
|
5558
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5558
|
+
Defined in: [data-structures/binary-tree/bst.ts:2830](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2830)
|
|
5559
5559
|
|
|
5560
5560
|
(Protected) Binary search for floor by key with pruning optimization.
|
|
5561
5561
|
Performs standard BST binary search, choosing left or right subtree based on comparator result.
|
|
@@ -5593,7 +5593,7 @@ Time O(h) where h is tree height.
|
|
|
5593
5593
|
protected _floorByPredicate(predicate, iterationType): BSTNode<K, V> | undefined;
|
|
5594
5594
|
```
|
|
5595
5595
|
|
|
5596
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5596
|
+
Defined in: [data-structures/binary-tree/bst.ts:2883](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2883)
|
|
5597
5597
|
|
|
5598
5598
|
(Protected) In-order traversal search for floor by predicate.
|
|
5599
5599
|
Falls back to linear in-order traversal when predicate-based search is required.
|
|
@@ -5632,7 +5632,7 @@ Space Complexity: O(h) for recursion, O(h) for iterative stack.
|
|
|
5632
5632
|
protected _getByRankIterative(node, k): BSTNode<K, V> | undefined;
|
|
5633
5633
|
```
|
|
5634
5634
|
|
|
5635
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5635
|
+
Defined in: [data-structures/binary-tree/bst.ts:3333](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3333)
|
|
5636
5636
|
|
|
5637
5637
|
(Protected) Finds the node at position k in tree order (iterative).
|
|
5638
5638
|
|
|
@@ -5662,7 +5662,7 @@ Time O(log n), Space O(1)
|
|
|
5662
5662
|
protected _getByRankRecursive(node, k): BSTNode<K, V> | undefined;
|
|
5663
5663
|
```
|
|
5664
5664
|
|
|
5665
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5665
|
+
Defined in: [data-structures/binary-tree/bst.ts:3354](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3354)
|
|
5666
5666
|
|
|
5667
5667
|
(Protected) Finds the node at position k in tree order (recursive).
|
|
5668
5668
|
|
|
@@ -5692,7 +5692,7 @@ Time O(log n), Space O(log n) call stack
|
|
|
5692
5692
|
protected _getIterator(node?): IterableIterator<[K, V | undefined]>;
|
|
5693
5693
|
```
|
|
5694
5694
|
|
|
5695
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5695
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3208](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3208)
|
|
5696
5696
|
|
|
5697
5697
|
(Protected) Gets the iterator for the tree (default in-order).
|
|
5698
5698
|
|
|
@@ -5726,7 +5726,7 @@ Time O(N) for full iteration. O(H) to get the first element. Space O(H) for the
|
|
|
5726
5726
|
protected _getRankIterative(node, key): number;
|
|
5727
5727
|
```
|
|
5728
5728
|
|
|
5729
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5729
|
+
Defined in: [data-structures/binary-tree/bst.ts:3366](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3366)
|
|
5730
5730
|
|
|
5731
5731
|
(Protected) Computes the rank of a key iteratively.
|
|
5732
5732
|
|
|
@@ -5756,7 +5756,7 @@ Time O(log n), Space O(1)
|
|
|
5756
5756
|
protected _getRankRecursive(node, key): number;
|
|
5757
5757
|
```
|
|
5758
5758
|
|
|
5759
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5759
|
+
Defined in: [data-structures/binary-tree/bst.ts:3392](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3392)
|
|
5760
5760
|
|
|
5761
5761
|
(Protected) Computes the rank of a key recursively.
|
|
5762
5762
|
|
|
@@ -5786,7 +5786,7 @@ Time O(log n), Space O(log n) call stack
|
|
|
5786
5786
|
protected _isDisplayLeaf(node, options): boolean;
|
|
5787
5787
|
```
|
|
5788
5788
|
|
|
5789
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5789
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3464](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3464)
|
|
5790
5790
|
|
|
5791
5791
|
Check if a node is a display leaf (empty, null, undefined, NIL, or real leaf).
|
|
5792
5792
|
|
|
@@ -5816,7 +5816,7 @@ Check if a node is a display leaf (empty, null, undefined, NIL, or real leaf).
|
|
|
5816
5816
|
protected _isPredicate(p): p is NodePredicate<BinaryTreeNode<K, V>>;
|
|
5817
5817
|
```
|
|
5818
5818
|
|
|
5819
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
5819
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3641](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3641)
|
|
5820
5820
|
|
|
5821
5821
|
(Protected) Checks if an item is a predicate function.
|
|
5822
5822
|
|
|
@@ -5850,7 +5850,7 @@ Time O(1)
|
|
|
5850
5850
|
protected _keyValueNodeOrEntryToNodeAndValue(keyNodeOrEntry, value?): [OptNode<BSTNode<K, V>>, V | undefined];
|
|
5851
5851
|
```
|
|
5852
5852
|
|
|
5853
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5853
|
+
Defined in: [data-structures/binary-tree/bst.ts:3290](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3290)
|
|
5854
5854
|
|
|
5855
5855
|
(Protected) Converts a key, node, or entry into a standardized [node, value] tuple.
|
|
5856
5856
|
|
|
@@ -5894,7 +5894,7 @@ Time O(1)
|
|
|
5894
5894
|
protected _lowerByKey(key, iterationType): BSTNode<K, V> | undefined;
|
|
5895
5895
|
```
|
|
5896
5896
|
|
|
5897
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5897
|
+
Defined in: [data-structures/binary-tree/bst.ts:2948](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L2948)
|
|
5898
5898
|
|
|
5899
5899
|
(Protected) Binary search for lower by key with pruning optimization.
|
|
5900
5900
|
Performs standard BST binary search, choosing left or right subtree based on comparator result.
|
|
@@ -5932,7 +5932,7 @@ Time O(h) where h is tree height.
|
|
|
5932
5932
|
protected _lowerByPredicate(predicate, iterationType): BSTNode<K, V> | undefined;
|
|
5933
5933
|
```
|
|
5934
5934
|
|
|
5935
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5935
|
+
Defined in: [data-structures/binary-tree/bst.ts:3001](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3001)
|
|
5936
5936
|
|
|
5937
5937
|
(Protected) In-order traversal search for lower by predicate.
|
|
5938
5938
|
Falls back to linear in-order traversal when predicate-based search is required.
|
|
@@ -5971,7 +5971,7 @@ Space Complexity: O(h) for recursion, O(h) for iterative stack.
|
|
|
5971
5971
|
protected _next(node): BSTNode<K, V> | undefined;
|
|
5972
5972
|
```
|
|
5973
5973
|
|
|
5974
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
5974
|
+
Defined in: [data-structures/binary-tree/bst.ts:3409](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3409)
|
|
5975
5975
|
|
|
5976
5976
|
(Protected) Finds the in-order successor of a node.
|
|
5977
5977
|
|
|
@@ -5997,7 +5997,7 @@ Time O(log n), Space O(1)
|
|
|
5997
5997
|
protected _replaceNode(oldNode, newNode): BinaryTreeNode<K, V>;
|
|
5998
5998
|
```
|
|
5999
5999
|
|
|
6000
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
6000
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3554](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3554)
|
|
6001
6001
|
|
|
6002
6002
|
(Protected) Replaces a node in the tree with a new node, maintaining children and parent links.
|
|
6003
6003
|
|
|
@@ -6040,7 +6040,7 @@ protected _resolveDisplayLeaf(
|
|
|
6040
6040
|
emptyDisplayLayout): NodeDisplayLayout;
|
|
6041
6041
|
```
|
|
6042
6042
|
|
|
6043
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
6043
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3494](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3494)
|
|
6044
6044
|
|
|
6045
6045
|
Resolve a display leaf node to its layout.
|
|
6046
6046
|
|
|
@@ -6074,7 +6074,7 @@ Resolve a display leaf node to its layout.
|
|
|
6074
6074
|
protected _setRoot(v): void;
|
|
6075
6075
|
```
|
|
6076
6076
|
|
|
6077
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
6077
|
+
Defined in: [data-structures/binary-tree/bst.ts:3428](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3428)
|
|
6078
6078
|
|
|
6079
6079
|
(Protected) Sets the root node and clears its parent reference.
|
|
6080
6080
|
|
|
@@ -6106,7 +6106,7 @@ Time O(1)
|
|
|
6106
6106
|
protected _setValue(key, value): boolean;
|
|
6107
6107
|
```
|
|
6108
6108
|
|
|
6109
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
6109
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3673](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3673)
|
|
6110
6110
|
|
|
6111
6111
|
(Protected) Sets a value in the external store (Map mode).
|
|
6112
6112
|
|
|
@@ -6146,7 +6146,7 @@ Time O(1) (average for Map.set).
|
|
|
6146
6146
|
protected _snapshotOptions<TK, TV, TR>(): BSTOptions<TK, TV, TR>;
|
|
6147
6147
|
```
|
|
6148
6148
|
|
|
6149
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
6149
|
+
Defined in: [data-structures/binary-tree/bst.ts:3274](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3274)
|
|
6150
6150
|
|
|
6151
6151
|
(Protected) Snapshots the current BST's configuration options.
|
|
6152
6152
|
|
|
@@ -6186,7 +6186,7 @@ Time O(1)
|
|
|
6186
6186
|
protected _swapProperties(srcNode, destNode): BinaryTreeNode<K, V> | undefined;
|
|
6187
6187
|
```
|
|
6188
6188
|
|
|
6189
|
-
Defined in: [data-structures/binary-tree/binary-tree.ts:
|
|
6189
|
+
Defined in: [data-structures/binary-tree/binary-tree.ts:3520](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/binary-tree.ts#L3520)
|
|
6190
6190
|
|
|
6191
6191
|
(Protected) Swaps the key/value properties of two nodes.
|
|
6192
6192
|
|
|
@@ -6234,7 +6234,7 @@ Time O(1)
|
|
|
6234
6234
|
protected _updateCount(node): void;
|
|
6235
6235
|
```
|
|
6236
6236
|
|
|
6237
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
6237
|
+
Defined in: [data-structures/binary-tree/bst.ts:3309](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3309)
|
|
6238
6238
|
|
|
6239
6239
|
(Protected) Recalculates the subtree count for a single node.
|
|
6240
6240
|
|
|
@@ -6260,7 +6260,7 @@ Time O(1). Only active when enableOrderStatistic is true.
|
|
|
6260
6260
|
protected _updateCountAlongPath(node): void;
|
|
6261
6261
|
```
|
|
6262
6262
|
|
|
6263
|
-
Defined in: [data-structures/binary-tree/bst.ts:
|
|
6263
|
+
Defined in: [data-structures/binary-tree/bst.ts:3320](https://github.com/zrwusa/data-structure-typed/blob/main/src/data-structures/binary-tree/bst.ts#L3320)
|
|
6264
6264
|
|
|
6265
6265
|
(Protected) Updates subtree counts from a node up to the root.
|
|
6266
6266
|
|