data-structure-typed 1.18.6 → 1.18.7

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 (143) hide show
  1. package/dist/data-structures/binary-tree/abstract-binary-tree.d.ts +48 -24
  2. package/dist/data-structures/binary-tree/abstract-binary-tree.js +51 -26
  3. package/dist/data-structures/binary-tree/avl-tree.d.ts +5 -4
  4. package/dist/data-structures/binary-tree/avl-tree.js +5 -3
  5. package/dist/data-structures/binary-tree/binary-tree.d.ts +13 -3
  6. package/dist/data-structures/binary-tree/binary-tree.js +14 -5
  7. package/dist/data-structures/binary-tree/bst.d.ts +26 -5
  8. package/dist/data-structures/binary-tree/bst.js +26 -4
  9. package/dist/data-structures/binary-tree/rb-tree.d.ts +30 -1
  10. package/dist/data-structures/binary-tree/rb-tree.js +27 -14
  11. package/dist/data-structures/binary-tree/tree-multiset.d.ts +15 -4
  12. package/dist/data-structures/binary-tree/tree-multiset.js +15 -3
  13. package/dist/data-structures/graph/abstract-graph.d.ts +20 -21
  14. package/dist/data-structures/graph/abstract-graph.js +24 -19
  15. package/dist/data-structures/graph/directed-graph.d.ts +10 -9
  16. package/dist/data-structures/graph/directed-graph.js +18 -18
  17. package/dist/data-structures/graph/undirected-graph.d.ts +5 -11
  18. package/dist/data-structures/graph/undirected-graph.js +4 -17
  19. package/dist/data-structures/interfaces/abstract-binary-tree.d.ts +101 -0
  20. package/dist/data-structures/interfaces/abstract-binary-tree.js +2 -0
  21. package/dist/data-structures/interfaces/abstract-graph.d.ts +1 -4
  22. package/dist/data-structures/interfaces/avl-tree.d.ts +16 -1
  23. package/dist/data-structures/interfaces/binary-tree.d.ts +4 -24
  24. package/dist/data-structures/interfaces/bst.d.ts +18 -1
  25. package/dist/data-structures/interfaces/directed-graph.d.ts +4 -1
  26. package/dist/data-structures/interfaces/index.d.ts +1 -1
  27. package/dist/data-structures/interfaces/index.js +1 -1
  28. package/dist/data-structures/interfaces/rb-tree.d.ts +9 -0
  29. package/dist/data-structures/interfaces/rb-tree.js +2 -0
  30. package/dist/data-structures/interfaces/undirected-graph.d.ts +4 -1
  31. package/dist/data-structures/types/abstract-binary-tree.d.ts +2 -2
  32. package/dist/utils/utils.js +62 -0
  33. package/docs/assets/search.js +1 -1
  34. package/docs/classes/AVLTree.html +292 -180
  35. package/docs/classes/AVLTreeNode.html +126 -77
  36. package/docs/classes/AaTree.html +12 -6
  37. package/docs/classes/AbstractBinaryTree.html +258 -163
  38. package/docs/classes/AbstractBinaryTreeNode.html +117 -84
  39. package/docs/classes/AbstractEdge.html +22 -16
  40. package/docs/classes/AbstractGraph.html +137 -140
  41. package/docs/classes/AbstractVertex.html +19 -13
  42. package/docs/classes/ArrayDeque.html +25 -19
  43. package/docs/classes/BST.html +275 -174
  44. package/docs/classes/BSTNode.html +127 -77
  45. package/docs/classes/BTree.html +12 -6
  46. package/docs/classes/BinaryIndexedTree.html +20 -14
  47. package/docs/classes/BinaryTree.html +265 -169
  48. package/docs/classes/BinaryTreeNode.html +110 -61
  49. package/docs/classes/Character.html +15 -9
  50. package/docs/classes/CoordinateMap.html +20 -14
  51. package/docs/classes/CoordinateSet.html +19 -13
  52. package/docs/classes/Deque.html +45 -39
  53. package/docs/classes/DirectedEdge.html +26 -20
  54. package/docs/classes/DirectedGraph.html +189 -154
  55. package/docs/classes/DirectedVertex.html +17 -11
  56. package/docs/classes/DoublyLinkedList.html +48 -42
  57. package/docs/classes/DoublyLinkedListNode.html +22 -16
  58. package/docs/classes/HashTable.html +12 -6
  59. package/docs/classes/Heap.html +26 -20
  60. package/docs/classes/HeapItem.html +19 -13
  61. package/docs/classes/Matrix2D.html +27 -21
  62. package/docs/classes/MatrixNTI2D.html +15 -9
  63. package/docs/classes/MaxHeap.html +26 -20
  64. package/docs/classes/MaxPriorityQueue.html +45 -39
  65. package/docs/classes/MinHeap.html +26 -20
  66. package/docs/classes/MinPriorityQueue.html +45 -39
  67. package/docs/classes/Navigator.html +21 -15
  68. package/docs/classes/ObjectDeque.html +36 -30
  69. package/docs/classes/Pair.html +12 -6
  70. package/docs/classes/PriorityQueue.html +43 -37
  71. package/docs/classes/Queue.html +25 -19
  72. package/docs/classes/RBTree.html +2388 -0
  73. package/docs/classes/RBTreeNode.html +516 -0
  74. package/docs/classes/SegmentTree.html +28 -22
  75. package/docs/classes/SegmentTreeNode.html +31 -25
  76. package/docs/classes/SinglyLinkedList.html +45 -39
  77. package/docs/classes/SinglyLinkedListNode.html +19 -13
  78. package/docs/classes/SkipLinkedList.html +12 -6
  79. package/docs/classes/SplayTree.html +12 -6
  80. package/docs/classes/Stack.html +23 -17
  81. package/docs/classes/TreeMap.html +12 -6
  82. package/docs/classes/TreeMultiSet.html +273 -172
  83. package/docs/classes/TreeMultiSetNode.html +126 -77
  84. package/docs/classes/TreeNode.html +27 -21
  85. package/docs/classes/TreeSet.html +12 -6
  86. package/docs/classes/Trie.html +24 -18
  87. package/docs/classes/TrieNode.html +22 -16
  88. package/docs/classes/TwoThreeTree.html +12 -6
  89. package/docs/classes/UndirectedEdge.html +23 -17
  90. package/docs/classes/UndirectedGraph.html +160 -146
  91. package/docs/classes/UndirectedVertex.html +17 -11
  92. package/docs/classes/Vector2D.html +39 -33
  93. package/docs/enums/CP.html +15 -9
  94. package/docs/enums/FamilyPosition.html +15 -9
  95. package/docs/enums/LoopType.html +14 -8
  96. package/docs/enums/RBColor.html +14 -8
  97. package/docs/enums/TopologicalProperty.html +15 -9
  98. package/docs/index.html +11 -5
  99. package/docs/interfaces/IAVLTree.html +1378 -0
  100. package/docs/interfaces/IAVLTreeNode.html +405 -0
  101. package/docs/interfaces/IAbstractBinaryTree.html +1124 -0
  102. package/docs/interfaces/{IBinaryTreeNode.html → IAbstractBinaryTreeNode.html} +61 -73
  103. package/docs/interfaces/{IGraph.html → IAbstractGraph.html} +52 -90
  104. package/docs/interfaces/IBST.html +1271 -0
  105. package/docs/interfaces/IBSTNode.html +408 -0
  106. package/docs/interfaces/IDirectedGraph.html +329 -16
  107. package/docs/interfaces/IUNDirectedGraph.html +322 -8
  108. package/docs/modules.html +22 -10
  109. package/docs/types/AVLTreeOptions.html +12 -6
  110. package/docs/types/{AbstractResultsByProperty.html → AbstractBinaryTreeNodeProperties.html} +16 -10
  111. package/docs/types/{AbstractResultByProperty.html → AbstractBinaryTreeNodeProperty.html} +16 -10
  112. package/docs/types/AbstractBinaryTreeOptions.html +12 -6
  113. package/docs/types/AbstractRecursiveBinaryTreeNode.html +12 -6
  114. package/docs/types/BSTComparator.html +12 -6
  115. package/docs/types/BSTOptions.html +12 -6
  116. package/docs/types/BinaryTreeDeletedResult.html +12 -6
  117. package/docs/types/BinaryTreeNodeId.html +12 -6
  118. package/docs/types/BinaryTreeNodePropertyName.html +12 -6
  119. package/docs/types/BinaryTreeOptions.html +12 -6
  120. package/docs/types/DFSOrderPattern.html +12 -6
  121. package/docs/types/DijkstraResult.html +12 -6
  122. package/docs/types/Direction.html +12 -6
  123. package/docs/types/EdgeId.html +12 -6
  124. package/docs/types/HeapOptions.html +12 -6
  125. package/docs/types/IdObject.html +12 -6
  126. package/docs/types/KeyValObject.html +12 -6
  127. package/docs/types/NavigatorParams.html +12 -6
  128. package/docs/types/NodeOrPropertyName.html +12 -6
  129. package/docs/types/PriorityQueueComparator.html +12 -6
  130. package/docs/types/PriorityQueueDFSOrderPattern.html +12 -6
  131. package/docs/types/PriorityQueueOptions.html +12 -6
  132. package/docs/types/RBTreeOptions.html +12 -6
  133. package/docs/types/RecursiveAVLTreeNode.html +12 -6
  134. package/docs/types/RecursiveBSTNode.html +12 -6
  135. package/docs/types/RecursiveBinaryTreeNode.html +12 -6
  136. package/docs/types/RecursiveTreeMultiSetNode.html +12 -6
  137. package/docs/types/SegmentTreeNodeVal.html +12 -6
  138. package/docs/types/TopologicalStatus.html +12 -6
  139. package/docs/types/TreeMultiSetOptions.html +12 -6
  140. package/docs/types/Turning.html +12 -6
  141. package/docs/types/VertexId.html +12 -6
  142. package/package.json +2 -2
  143. package/docs/interfaces/IBinaryTree.html +0 -189
@@ -25,9 +25,13 @@
25
25
  <ul class="tsd-hierarchy">
26
26
  <li><a href="BST.html" class="tsd-signature-type tsd-kind-class">BST</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span>
27
27
  <ul class="tsd-hierarchy">
28
- <li><span class="target">AVLTree</span></li></ul></li></ul></section><aside class="tsd-sources">
28
+ <li><span class="target">AVLTree</span></li></ul></li></ul></section>
29
+ <section class="tsd-panel">
30
+ <h4>Implements</h4>
31
+ <ul class="tsd-hierarchy">
32
+ <li><a href="../interfaces/IAVLTree.html" class="tsd-signature-type tsd-kind-interface">IAVLTree</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span></li></ul></section><aside class="tsd-sources">
29
33
  <ul>
30
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L16">src/data-structures/binary-tree/avl-tree.ts:16</a></li></ul></aside>
34
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L18">src/data-structures/binary-tree/avl-tree.ts:18</a></li></ul></aside>
31
35
  <section class="tsd-panel-group tsd-index-group">
32
36
  <section class="tsd-panel tsd-index-panel">
33
37
  <details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
@@ -63,7 +67,6 @@
63
67
  <a href="AVLTree.html#DFSIterative" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>DFSIterative</span></a>
64
68
  <a href="AVLTree.html#_accumulatedByPropertyName" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_accumulated<wbr/>By<wbr/>Property<wbr/>Name</span></a>
65
69
  <a href="AVLTree.html#_compare" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_compare</span></a>
66
- <a href="AVLTree.html#_createNode" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_create<wbr/>Node</span></a>
67
70
  <a href="AVLTree.html#_getResultByPropertyName" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Result<wbr/>By<wbr/>Property<wbr/>Name</span></a>
68
71
  <a href="AVLTree.html#_pushByPropertyNameStopOrNot" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_push<wbr/>By<wbr/>Property<wbr/>Name<wbr/>Stop<wbr/>Or<wbr/>Not</span></a>
69
72
  <a href="AVLTree.html#_resetResults" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_reset<wbr/>Results</span></a>
@@ -90,6 +93,7 @@
90
93
  <a href="AVLTree.html#balanceRL" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>balanceRL</span></a>
91
94
  <a href="AVLTree.html#balanceRR" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>balanceRR</span></a>
92
95
  <a href="AVLTree.html#clear" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>clear</span></a>
96
+ <a href="AVLTree.html#createNode" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Node</span></a>
93
97
  <a href="AVLTree.html#fill" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>fill</span></a>
94
98
  <a href="AVLTree.html#get" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get</span></a>
95
99
  <a href="AVLTree.html#getDepth" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Depth</span></a>
@@ -104,6 +108,7 @@
104
108
  <a href="AVLTree.html#has" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>has</span></a>
105
109
  <a href="AVLTree.html#isAVLBalanced" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>isAVLBalanced</span></a>
106
110
  <a href="AVLTree.html#isBST" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>isBST</span></a>
111
+ <a href="AVLTree.html#isBSTByRooted" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>isBSTBy<wbr/>Rooted</span></a>
107
112
  <a href="AVLTree.html#isBalanced" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>is<wbr/>Balanced</span></a>
108
113
  <a href="AVLTree.html#isEmpty" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>is<wbr/>Empty</span></a>
109
114
  <a href="AVLTree.html#lastKey" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>last<wbr/>Key</span></a>
@@ -128,7 +133,7 @@
128
133
  <h4>Type Parameters</h4>
129
134
  <ul class="tsd-type-parameter-list">
130
135
  <li>
131
- <h4><span class="tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol"> extends </span><a href="AVLTreeNode.html" class="tsd-signature-type tsd-kind-class">AVLTreeNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span> = <a href="AVLTreeNode.html" class="tsd-signature-type tsd-kind-class">AVLTreeNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><a href="../types/RecursiveAVLTreeNode.html" class="tsd-signature-type tsd-kind-type-alias">RecursiveAVLTreeNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section>
136
+ <h4><span class="tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol"> extends </span><a href="AVLTreeNode.html" class="tsd-signature-type tsd-kind-class">AVLTreeNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span> = <a href="AVLTreeNode.html" class="tsd-signature-type tsd-kind-class">AVLTreeNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><a href="../types/RecursiveAVLTreeNode.html" class="tsd-signature-type tsd-kind-type-alias">RecursiveAVLTreeNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section>
132
137
  <div class="tsd-parameters">
133
138
  <h4 class="tsd-parameters-title">Parameters</h4>
134
139
  <ul class="tsd-parameter-list">
@@ -137,7 +142,7 @@
137
142
  <h4 class="tsd-returns-title">Returns <a href="AVLTree.html" class="tsd-signature-type tsd-kind-class">AVLTree</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
138
143
  <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#constructor">constructor</a></p>
139
144
  <ul>
140
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L17">src/data-structures/binary-tree/avl-tree.ts:17</a></li></ul></aside></li></ul></section></section>
145
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L19">src/data-structures/binary-tree/avl-tree.ts:19</a></li></ul></aside></li></ul></section></section>
141
146
  <section class="tsd-panel-group tsd-member-group">
142
147
  <h2>Properties</h2>
143
148
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_comparator" class="tsd-anchor"></a>
@@ -145,7 +150,7 @@
145
150
  <div class="tsd-signature"><span class="tsd-kind-property">_comparator</span><span class="tsd-signature-symbol">:</span> <a href="../types/BSTComparator.html" class="tsd-signature-type tsd-kind-type-alias">BSTComparator</a><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources">
146
151
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_comparator">_comparator</a></p>
147
152
  <ul>
148
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L475">src/data-structures/binary-tree/bst.ts:475</a></li></ul></aside></section></section>
153
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L496">src/data-structures/binary-tree/bst.ts:496</a></li></ul></aside></section></section>
149
154
  <section class="tsd-panel-group tsd-member-group">
150
155
  <h2>Accessors</h2>
151
156
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="autoIncrementId" class="tsd-anchor"></a>
@@ -154,108 +159,120 @@
154
159
  <li class="tsd-signature" id="autoIncrementId.autoIncrementId-1"><span class="tsd-signature-symbol">get</span> autoIncrementId<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
155
160
  <li class="tsd-description">
156
161
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
162
+ <p>Implementation of IAVLTree.autoIncrementId</p>
157
163
  <p>Inherited from BST.autoIncrementId</p>
158
164
  <ul>
159
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L207">src/data-structures/binary-tree/abstract-binary-tree.ts:207</a></li></ul></aside></li></ul></section>
165
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L224">src/data-structures/binary-tree/abstract-binary-tree.ts:224</a></li></ul></aside></li></ul></section>
160
166
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="count" class="tsd-anchor"></a>
161
167
  <h3 class="tsd-anchor-link"><span>count</span><a href="#count" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
162
168
  <ul class="tsd-signatures tsd-is-inherited">
163
169
  <li class="tsd-signature" id="count.count-1"><span class="tsd-signature-symbol">get</span> count<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
164
170
  <li class="tsd-description">
165
171
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
172
+ <p>Implementation of IAVLTree.count</p>
166
173
  <p>Inherited from BST.count</p>
167
174
  <ul>
168
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L237">src/data-structures/binary-tree/abstract-binary-tree.ts:237</a></li></ul></aside></li></ul></section>
175
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L254">src/data-structures/binary-tree/abstract-binary-tree.ts:254</a></li></ul></aside></li></ul></section>
169
176
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isDuplicatedVal" class="tsd-anchor"></a>
170
177
  <h3 class="tsd-anchor-link"><span>is<wbr/>Duplicated<wbr/>Val</span><a href="#isDuplicatedVal" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
171
178
  <ul class="tsd-signatures tsd-is-inherited">
172
179
  <li class="tsd-signature" id="isDuplicatedVal.isDuplicatedVal-1"><span class="tsd-signature-symbol">get</span> isDuplicatedVal<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
173
180
  <li class="tsd-description">
174
181
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
182
+ <p>Implementation of IAVLTree.isDuplicatedVal</p>
175
183
  <p>Inherited from BST.isDuplicatedVal</p>
176
184
  <ul>
177
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L219">src/data-structures/binary-tree/abstract-binary-tree.ts:219</a></li></ul></aside></li></ul></section>
185
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L236">src/data-structures/binary-tree/abstract-binary-tree.ts:236</a></li></ul></aside></li></ul></section>
178
186
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="loopType" class="tsd-anchor"></a>
179
187
  <h3 class="tsd-anchor-link"><span>loop<wbr/>Type</span><a href="#loopType" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
180
188
  <ul class="tsd-signatures tsd-is-inherited">
181
189
  <li class="tsd-signature" id="loopType.loopType-1"><span class="tsd-signature-symbol">get</span> loopType<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../enums/LoopType.html" class="tsd-signature-type tsd-kind-enum">LoopType</a></li>
182
190
  <li class="tsd-description">
183
191
  <h4 class="tsd-returns-title">Returns <a href="../enums/LoopType.html" class="tsd-signature-type tsd-kind-enum">LoopType</a></h4><aside class="tsd-sources">
192
+ <p>Implementation of IAVLTree.loopType</p>
184
193
  <p>Inherited from BST.loopType</p>
185
194
  <ul>
186
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L172">src/data-structures/binary-tree/abstract-binary-tree.ts:172</a></li></ul></aside></li></ul></section>
195
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L189">src/data-structures/binary-tree/abstract-binary-tree.ts:189</a></li></ul></aside></li></ul></section>
187
196
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="maxId" class="tsd-anchor"></a>
188
197
  <h3 class="tsd-anchor-link"><span>max<wbr/>Id</span><a href="#maxId" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
189
198
  <ul class="tsd-signatures tsd-is-inherited">
190
199
  <li class="tsd-signature" id="maxId.maxId-1"><span class="tsd-signature-symbol">get</span> maxId<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
191
200
  <li class="tsd-description">
192
201
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
202
+ <p>Implementation of IAVLTree.maxId</p>
193
203
  <p>Inherited from BST.maxId</p>
194
204
  <ul>
195
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L213">src/data-structures/binary-tree/abstract-binary-tree.ts:213</a></li></ul></aside></li></ul></section>
205
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L230">src/data-structures/binary-tree/abstract-binary-tree.ts:230</a></li></ul></aside></li></ul></section>
196
206
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="root" class="tsd-anchor"></a>
197
207
  <h3 class="tsd-anchor-link"><span>root</span><a href="#root" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
198
208
  <ul class="tsd-signatures tsd-is-inherited">
199
209
  <li class="tsd-signature" id="root.root-1"><span class="tsd-signature-symbol">get</span> root<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></li>
200
210
  <li class="tsd-description">
201
211
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><aside class="tsd-sources">
212
+ <p>Implementation of IAVLTree.root</p>
202
213
  <p>Inherited from BST.root</p>
203
214
  <ul>
204
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L225">src/data-structures/binary-tree/abstract-binary-tree.ts:225</a></li></ul></aside></li></ul></section>
215
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L242">src/data-structures/binary-tree/abstract-binary-tree.ts:242</a></li></ul></aside></li></ul></section>
205
216
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="size" class="tsd-anchor"></a>
206
217
  <h3 class="tsd-anchor-link"><span>size</span><a href="#size" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
207
218
  <ul class="tsd-signatures tsd-is-inherited">
208
219
  <li class="tsd-signature" id="size.size-1"><span class="tsd-signature-symbol">get</span> size<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
209
220
  <li class="tsd-description">
210
221
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
222
+ <p>Implementation of IAVLTree.size</p>
211
223
  <p>Inherited from BST.size</p>
212
224
  <ul>
213
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L231">src/data-structures/binary-tree/abstract-binary-tree.ts:231</a></li></ul></aside></li></ul></section>
225
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L248">src/data-structures/binary-tree/abstract-binary-tree.ts:248</a></li></ul></aside></li></ul></section>
214
226
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedCount" class="tsd-anchor"></a>
215
227
  <h3 class="tsd-anchor-link"><span>visited<wbr/>Count</span><a href="#visitedCount" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
216
228
  <ul class="tsd-signatures tsd-is-inherited">
217
229
  <li class="tsd-signature" id="visitedCount.visitedCount-1"><span class="tsd-signature-symbol">get</span> visitedCount<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></li>
218
230
  <li class="tsd-description">
219
231
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
232
+ <p>Implementation of IAVLTree.visitedCount</p>
220
233
  <p>Inherited from BST.visitedCount</p>
221
234
  <ul>
222
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L195">src/data-structures/binary-tree/abstract-binary-tree.ts:195</a></li></ul></aside></li></ul></section>
235
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L212">src/data-structures/binary-tree/abstract-binary-tree.ts:212</a></li></ul></aside></li></ul></section>
223
236
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedId" class="tsd-anchor"></a>
224
237
  <h3 class="tsd-anchor-link"><span>visited<wbr/>Id</span><a href="#visitedId" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
225
238
  <ul class="tsd-signatures tsd-is-inherited">
226
239
  <li class="tsd-signature" id="visitedId.visitedId-1"><span class="tsd-signature-symbol">get</span> visitedId<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></li>
227
240
  <li class="tsd-description">
228
241
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
242
+ <p>Implementation of IAVLTree.visitedId</p>
229
243
  <p>Inherited from BST.visitedId</p>
230
244
  <ul>
231
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L177">src/data-structures/binary-tree/abstract-binary-tree.ts:177</a></li></ul></aside></li></ul></section>
245
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L194">src/data-structures/binary-tree/abstract-binary-tree.ts:194</a></li></ul></aside></li></ul></section>
232
246
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedLeftSum" class="tsd-anchor"></a>
233
247
  <h3 class="tsd-anchor-link"><span>visited<wbr/>Left<wbr/>Sum</span><a href="#visitedLeftSum" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
234
248
  <ul class="tsd-signatures tsd-is-inherited">
235
249
  <li class="tsd-signature" id="visitedLeftSum.visitedLeftSum-1"><span class="tsd-signature-symbol">get</span> visitedLeftSum<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></li>
236
250
  <li class="tsd-description">
237
251
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
252
+ <p>Implementation of IAVLTree.visitedLeftSum</p>
238
253
  <p>Inherited from BST.visitedLeftSum</p>
239
254
  <ul>
240
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L201">src/data-structures/binary-tree/abstract-binary-tree.ts:201</a></li></ul></aside></li></ul></section>
255
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L218">src/data-structures/binary-tree/abstract-binary-tree.ts:218</a></li></ul></aside></li></ul></section>
241
256
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedNode" class="tsd-anchor"></a>
242
257
  <h3 class="tsd-anchor-link"><span>visited<wbr/>Node</span><a href="#visitedNode" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
243
258
  <ul class="tsd-signatures tsd-is-inherited">
244
259
  <li class="tsd-signature" id="visitedNode.visitedNode-1"><span class="tsd-signature-symbol">get</span> visitedNode<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></li>
245
260
  <li class="tsd-description">
246
261
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
262
+ <p>Implementation of IAVLTree.visitedNode</p>
247
263
  <p>Inherited from BST.visitedNode</p>
248
264
  <ul>
249
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L189">src/data-structures/binary-tree/abstract-binary-tree.ts:189</a></li></ul></aside></li></ul></section>
265
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L206">src/data-structures/binary-tree/abstract-binary-tree.ts:206</a></li></ul></aside></li></ul></section>
250
266
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedVal" class="tsd-anchor"></a>
251
267
  <h3 class="tsd-anchor-link"><span>visited<wbr/>Val</span><a href="#visitedVal" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
252
268
  <ul class="tsd-signatures tsd-is-inherited">
253
269
  <li class="tsd-signature" id="visitedVal.visitedVal-1"><span class="tsd-signature-symbol">get</span> visitedVal<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></li>
254
270
  <li class="tsd-description">
255
271
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
272
+ <p>Implementation of IAVLTree.visitedVal</p>
256
273
  <p>Inherited from BST.visitedVal</p>
257
274
  <ul>
258
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L183">src/data-structures/binary-tree/abstract-binary-tree.ts:183</a></li></ul></aside></li></ul></section></section>
275
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L200">src/data-structures/binary-tree/abstract-binary-tree.ts:200</a></li></ul></aside></li></ul></section></section>
259
276
  <section class="tsd-panel-group tsd-member-group">
260
277
  <h2>Methods</h2>
261
278
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="BFS" class="tsd-anchor"></a>
@@ -266,12 +283,13 @@
266
283
  <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree and returns the results based on a specified node
267
284
  or property name.</p>
268
285
  </div>
269
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
286
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
270
287
 
271
288
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
289
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
272
290
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
273
291
  <ul>
274
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L937">src/data-structures/binary-tree/abstract-binary-tree.ts:937</a></li></ul></aside></li>
292
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L963">src/data-structures/binary-tree/abstract-binary-tree.ts:963</a></li></ul></aside></li>
275
293
  <li class="tsd-signature tsd-anchor-link" id="BFS.BFS-2"><span class="tsd-kind-call-signature">BFS</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#BFS.BFS-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
276
294
  <li class="tsd-description">
277
295
  <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree and returns the results based on a specified node
@@ -288,12 +306,13 @@ performed starting from that node. If a property name is provided, the breadth-f
288
306
  performed starting from the root node</p>
289
307
  </div>
290
308
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
291
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
309
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
292
310
 
293
311
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
312
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
294
313
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
295
314
  <ul>
296
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L939">src/data-structures/binary-tree/abstract-binary-tree.ts:939</a></li></ul></aside></li>
315
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L965">src/data-structures/binary-tree/abstract-binary-tree.ts:965</a></li></ul></aside></li>
297
316
  <li class="tsd-signature tsd-anchor-link" id="BFS.BFS-3"><span class="tsd-kind-call-signature">BFS</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span><a href="#BFS.BFS-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
298
317
  <li class="tsd-description">
299
318
  <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree and returns the results based on a specified node
@@ -310,12 +329,13 @@ performed starting from that node. If a property name is provided, the breadth-f
310
329
  performed starting from the root node</p>
311
330
  </div>
312
331
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
313
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
332
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
314
333
 
315
334
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
335
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
316
336
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
317
337
  <ul>
318
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L941">src/data-structures/binary-tree/abstract-binary-tree.ts:941</a></li></ul></aside></li>
338
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L967">src/data-structures/binary-tree/abstract-binary-tree.ts:967</a></li></ul></aside></li>
319
339
  <li class="tsd-signature tsd-anchor-link" id="BFS.BFS-4"><span class="tsd-kind-call-signature">BFS</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><a href="#BFS.BFS-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
320
340
  <li class="tsd-description">
321
341
  <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree and returns the results based on a specified node
@@ -332,12 +352,13 @@ performed starting from that node. If a property name is provided, the breadth-f
332
352
  performed starting from the root node</p>
333
353
  </div>
334
354
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
335
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
355
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
336
356
 
337
357
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
358
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
338
359
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
339
360
  <ul>
340
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L943">src/data-structures/binary-tree/abstract-binary-tree.ts:943</a></li></ul></aside></li>
361
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L969">src/data-structures/binary-tree/abstract-binary-tree.ts:969</a></li></ul></aside></li>
341
362
  <li class="tsd-signature tsd-anchor-link" id="BFS.BFS-5"><span class="tsd-kind-call-signature">BFS</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#BFS.BFS-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
342
363
  <li class="tsd-description">
343
364
  <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree and returns the results based on a specified node
@@ -354,12 +375,13 @@ performed starting from that node. If a property name is provided, the breadth-f
354
375
  performed starting from the root node</p>
355
376
  </div>
356
377
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
357
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
378
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
358
379
 
359
380
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
381
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
360
382
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
361
383
  <ul>
362
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L945">src/data-structures/binary-tree/abstract-binary-tree.ts:945</a></li></ul></aside></li></ul></section>
384
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L971">src/data-structures/binary-tree/abstract-binary-tree.ts:971</a></li></ul></aside></li></ul></section>
363
385
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="DFS" class="tsd-anchor"></a>
364
386
  <h3 class="tsd-anchor-link"><span>DFS</span><a href="#DFS" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
365
387
  <ul class="tsd-signatures tsd-is-inherited">
@@ -368,12 +390,13 @@ performed starting from the root node</p>
368
390
  <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the results based on the
369
391
  specified pattern and node or property name.</p>
370
392
  </div>
371
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
393
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
372
394
 
373
395
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
396
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
374
397
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
375
398
  <ul>
376
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L973">src/data-structures/binary-tree/abstract-binary-tree.ts:973</a></li></ul></aside></li>
399
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L999">src/data-structures/binary-tree/abstract-binary-tree.ts:999</a></li></ul></aside></li>
377
400
  <li class="tsd-signature tsd-anchor-link" id="DFS.DFS-2"><span class="tsd-kind-call-signature">DFS</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#DFS.DFS-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
378
401
  <li class="tsd-description">
379
402
  <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the results based on the
@@ -397,12 +420,13 @@ either the name of a property in the <code>BinaryTreeNode</code> object or the v
397
420
  no value</p>
398
421
  </div>
399
422
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
400
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
423
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
401
424
 
402
425
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
426
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
403
427
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
404
428
  <ul>
405
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L975">src/data-structures/binary-tree/abstract-binary-tree.ts:975</a></li></ul></aside></li>
429
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1001">src/data-structures/binary-tree/abstract-binary-tree.ts:1001</a></li></ul></aside></li>
406
430
  <li class="tsd-signature tsd-anchor-link" id="DFS.DFS-3"><span class="tsd-kind-call-signature">DFS</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><a href="#DFS.DFS-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
407
431
  <li class="tsd-description">
408
432
  <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the results based on the
@@ -426,12 +450,13 @@ either the name of a property in the <code>BinaryTreeNode</code> object or the v
426
450
  no value</p>
427
451
  </div>
428
452
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
429
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
453
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
430
454
 
431
455
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
456
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
432
457
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
433
458
  <ul>
434
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L977">src/data-structures/binary-tree/abstract-binary-tree.ts:977</a></li></ul></aside></li>
459
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1003">src/data-structures/binary-tree/abstract-binary-tree.ts:1003</a></li></ul></aside></li>
435
460
  <li class="tsd-signature tsd-anchor-link" id="DFS.DFS-4"><span class="tsd-kind-call-signature">DFS</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><a href="#DFS.DFS-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
436
461
  <li class="tsd-description">
437
462
  <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the results based on the
@@ -455,12 +480,13 @@ either the name of a property in the <code>BinaryTreeNode</code> object or the v
455
480
  no value</p>
456
481
  </div>
457
482
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
458
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
483
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
459
484
 
460
485
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
486
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
461
487
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
462
488
  <ul>
463
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L979">src/data-structures/binary-tree/abstract-binary-tree.ts:979</a></li></ul></aside></li>
489
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1005">src/data-structures/binary-tree/abstract-binary-tree.ts:1005</a></li></ul></aside></li>
464
490
  <li class="tsd-signature tsd-anchor-link" id="DFS.DFS-5"><span class="tsd-kind-call-signature">DFS</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#DFS.DFS-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
465
491
  <li class="tsd-description">
466
492
  <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the results based on the
@@ -484,12 +510,13 @@ either the name of a property in the <code>BinaryTreeNode</code> object or the v
484
510
  no value</p>
485
511
  </div>
486
512
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
487
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
513
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
488
514
 
489
515
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
516
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
490
517
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
491
518
  <ul>
492
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L981">src/data-structures/binary-tree/abstract-binary-tree.ts:981</a></li></ul></aside></li></ul></section>
519
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1007">src/data-structures/binary-tree/abstract-binary-tree.ts:1007</a></li></ul></aside></li></ul></section>
493
520
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="DFSIterative" class="tsd-anchor"></a>
494
521
  <h3 class="tsd-anchor-link"><span>DFSIterative</span><a href="#DFSIterative" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
495
522
  <ul class="tsd-signatures tsd-is-inherited">
@@ -500,9 +527,10 @@ Space complexity of Iterative DFS equals to recursive DFS which is O(n) because
500
527
  </div>
501
528
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4>
502
529
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
530
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
503
531
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
504
532
  <ul>
505
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1023">src/data-structures/binary-tree/abstract-binary-tree.ts:1023</a></li></ul></aside></li>
533
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1049">src/data-structures/binary-tree/abstract-binary-tree.ts:1049</a></li></ul></aside></li>
506
534
  <li class="tsd-signature tsd-anchor-link" id="DFSIterative.DFSIterative-2"><span class="tsd-kind-call-signature">DFSIterative</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#DFSIterative.DFSIterative-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
507
535
  <li class="tsd-description">
508
536
  <div class="tsd-comment tsd-typography"><p>Time complexity is O(n)
@@ -519,9 +547,10 @@ Space complexity of Iterative DFS equals to recursive DFS which is O(n) because
519
547
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
520
548
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4>
521
549
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
550
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
522
551
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
523
552
  <ul>
524
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1025">src/data-structures/binary-tree/abstract-binary-tree.ts:1025</a></li></ul></aside></li>
553
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1051">src/data-structures/binary-tree/abstract-binary-tree.ts:1051</a></li></ul></aside></li>
525
554
  <li class="tsd-signature tsd-anchor-link" id="DFSIterative.DFSIterative-3"><span class="tsd-kind-call-signature">DFSIterative</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><a href="#DFSIterative.DFSIterative-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
526
555
  <li class="tsd-description">
527
556
  <div class="tsd-comment tsd-typography"><p>Time complexity is O(n)
@@ -538,9 +567,10 @@ Space complexity of Iterative DFS equals to recursive DFS which is O(n) because
538
567
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
539
568
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4>
540
569
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
570
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
541
571
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
542
572
  <ul>
543
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1027">src/data-structures/binary-tree/abstract-binary-tree.ts:1027</a></li></ul></aside></li>
573
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1053">src/data-structures/binary-tree/abstract-binary-tree.ts:1053</a></li></ul></aside></li>
544
574
  <li class="tsd-signature tsd-anchor-link" id="DFSIterative.DFSIterative-4"><span class="tsd-kind-call-signature">DFSIterative</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><a href="#DFSIterative.DFSIterative-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
545
575
  <li class="tsd-description">
546
576
  <div class="tsd-comment tsd-typography"><p>Time complexity is O(n)
@@ -557,9 +587,10 @@ Space complexity of Iterative DFS equals to recursive DFS which is O(n) because
557
587
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
558
588
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4>
559
589
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
590
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
560
591
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
561
592
  <ul>
562
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1029">src/data-structures/binary-tree/abstract-binary-tree.ts:1029</a></li></ul></aside></li>
593
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1055">src/data-structures/binary-tree/abstract-binary-tree.ts:1055</a></li></ul></aside></li>
563
594
  <li class="tsd-signature tsd-anchor-link" id="DFSIterative.DFSIterative-5"><span class="tsd-kind-call-signature">DFSIterative</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#DFSIterative.DFSIterative-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
564
595
  <li class="tsd-description">
565
596
  <div class="tsd-comment tsd-typography"><p>Time complexity is O(n)
@@ -576,9 +607,10 @@ Space complexity of Iterative DFS equals to recursive DFS which is O(n) because
576
607
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
577
608
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4>
578
609
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
610
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
579
611
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
580
612
  <ul>
581
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1031">src/data-structures/binary-tree/abstract-binary-tree.ts:1031</a></li></ul></aside></li></ul></section>
613
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1057">src/data-structures/binary-tree/abstract-binary-tree.ts:1057</a></li></ul></aside></li></ul></section>
582
614
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_accumulatedByPropertyName" class="tsd-anchor"></a>
583
615
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_accumulated<wbr/>By<wbr/>Property<wbr/>Name</span><a href="#_accumulatedByPropertyName" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
584
616
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -606,7 +638,7 @@ the property name of the node that should be accumulated. If it is a node object
606
638
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
607
639
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_accumulatedByPropertyName">_accumulatedByPropertyName</a></p>
608
640
  <ul>
609
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1443">src/data-structures/binary-tree/abstract-binary-tree.ts:1443</a></li></ul></aside></li></ul></section>
641
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1469">src/data-structures/binary-tree/abstract-binary-tree.ts:1469</a></li></ul></aside></li></ul></section>
610
642
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_compare" class="tsd-anchor"></a>
611
643
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_compare</span><a href="#_compare" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
612
644
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -634,46 +666,11 @@ than), or CP.eq (equal).</p>
634
666
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
635
667
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_compare">_compare</a></p>
636
668
  <ul>
637
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L485">src/data-structures/binary-tree/bst.ts:485</a></li></ul></aside></li></ul></section>
638
- <section class="tsd-panel tsd-member"><a id="_createNode" class="tsd-anchor"></a>
639
- <h3 class="tsd-anchor-link"><span>_create<wbr/>Node</span><a href="#_createNode" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
640
- <ul class="tsd-signatures">
641
- <li class="tsd-signature tsd-anchor-link" id="_createNode._createNode-1"><span class="tsd-kind-call-signature">_create<wbr/>Node</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">id</span>, <span class="tsd-kind-parameter">val</span>, <span class="tsd-kind-parameter">count</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><a href="#_createNode._createNode-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
642
- <li class="tsd-description">
643
- <div class="tsd-comment tsd-typography"><p>The function creates a new binary tree node with the given id, value, and count if the value is not null, otherwise
644
- it returns null.</p>
645
- </div>
646
- <div class="tsd-parameters">
647
- <h4 class="tsd-parameters-title">Parameters</h4>
648
- <ul class="tsd-parameter-list">
649
- <li>
650
- <h5><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">number</span></h5>
651
- <div class="tsd-comment tsd-typography"><p>The <code>id</code> parameter is the identifier for the binary tree node. It is of type
652
- <code>BinaryTreeNodeId</code>.</p>
653
- </div>
654
- <div class="tsd-comment tsd-typography"></div></li>
655
- <li>
656
- <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span></h5>
657
- <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter represents the value of the node. It can be of type <code>N</code> (generic type)
658
- or <code>null</code>.</p>
659
- </div>
660
- <div class="tsd-comment tsd-typography"></div></li>
661
- <li>
662
- <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">count</span>: <span class="tsd-signature-type">number</span></h5>
663
- <div class="tsd-comment tsd-typography"><p>The <code>count</code> parameter is an optional parameter of type <code>number</code>. It represents the number
664
- of occurrences of the value in the binary tree node. If not provided, the default value is <code>undefined</code>.</p>
665
- </div>
666
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
667
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>a BinaryTreeNode object if the value is not null, otherwise it returns null.</p>
668
-
669
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
670
- <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#_createNode">_createNode</a></p>
671
- <ul>
672
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L21">src/data-structures/binary-tree/avl-tree.ts:21</a></li></ul></aside></li></ul></section>
669
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L506">src/data-structures/binary-tree/bst.ts:506</a></li></ul></aside></li></ul></section>
673
670
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_getResultByPropertyName" class="tsd-anchor"></a>
674
671
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_get<wbr/>Result<wbr/>By<wbr/>Property<wbr/>Name</span><a href="#_getResultByPropertyName" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
675
672
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
676
- <li class="tsd-signature tsd-anchor-link" id="_getResultByPropertyName._getResultByPropertyName-1"><span class="tsd-kind-call-signature">_get<wbr/>Result<wbr/>By<wbr/>Property<wbr/>Name</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../types/AbstractResultsByProperty.html" class="tsd-signature-type tsd-kind-type-alias">AbstractResultsByProperty</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span><a href="#_getResultByPropertyName._getResultByPropertyName-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
673
+ <li class="tsd-signature tsd-anchor-link" id="_getResultByPropertyName._getResultByPropertyName-1"><span class="tsd-kind-call-signature">_get<wbr/>Result<wbr/>By<wbr/>Property<wbr/>Name</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../types/AbstractBinaryTreeNodeProperties.html" class="tsd-signature-type tsd-kind-type-alias">AbstractBinaryTreeNodeProperties</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span><a href="#_getResultByPropertyName._getResultByPropertyName-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
677
674
  <li class="tsd-description">
678
675
  <div class="tsd-comment tsd-typography"><p>The function <code>_getResultByPropertyName</code> returns different results based on the provided property name or defaulting
679
676
  to &#39;id&#39;.</p>
@@ -687,12 +684,12 @@ to &#39;id&#39;.</p>
687
684
  can accept a value of type <code>NodeOrPropertyName</code>.</p>
688
685
  </div>
689
686
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
690
- <h4 class="tsd-returns-title">Returns <a href="../types/AbstractResultsByProperty.html" class="tsd-signature-type tsd-kind-type-alias">AbstractResultsByProperty</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The method returns an object of type <code>AbstractResultsByProperty&lt;T&gt;</code>.</p>
687
+ <h4 class="tsd-returns-title">Returns <a href="../types/AbstractBinaryTreeNodeProperties.html" class="tsd-signature-type tsd-kind-type-alias">AbstractBinaryTreeNodeProperties</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The method returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;T&gt;</code>.</p>
691
688
 
692
689
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
693
690
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_getResultByPropertyName">_getResultByPropertyName</a></p>
694
691
  <ul>
695
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1472">src/data-structures/binary-tree/abstract-binary-tree.ts:1472</a></li></ul></aside></li></ul></section>
692
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1498">src/data-structures/binary-tree/abstract-binary-tree.ts:1498</a></li></ul></aside></li></ul></section>
696
693
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_pushByPropertyNameStopOrNot" class="tsd-anchor"></a>
697
694
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_push<wbr/>By<wbr/>Property<wbr/>Name<wbr/>Stop<wbr/>Or<wbr/>Not</span><a href="#_pushByPropertyNameStopOrNot" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
698
695
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -740,7 +737,7 @@ stop after finding the first matching node or continue searching for all matchin
740
737
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
741
738
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_pushByPropertyNameStopOrNot">_pushByPropertyNameStopOrNot</a></p>
742
739
  <ul>
743
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1406">src/data-structures/binary-tree/abstract-binary-tree.ts:1406</a></li></ul></aside></li></ul></section>
740
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1432">src/data-structures/binary-tree/abstract-binary-tree.ts:1432</a></li></ul></aside></li></ul></section>
744
741
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_resetResults" class="tsd-anchor"></a>
745
742
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_reset<wbr/>Results</span><a href="#_resetResults" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
746
743
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -752,7 +749,7 @@ stop after finding the first matching node or continue searching for all matchin
752
749
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
753
750
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_resetResults">_resetResults</a></p>
754
751
  <ul>
755
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1382">src/data-structures/binary-tree/abstract-binary-tree.ts:1382</a></li></ul></aside></li></ul></section>
752
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1408">src/data-structures/binary-tree/abstract-binary-tree.ts:1408</a></li></ul></aside></li></ul></section>
756
753
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setAutoIncrementId" class="tsd-anchor"></a>
757
754
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Auto<wbr/>Increment<wbr/>Id</span><a href="#_setAutoIncrementId" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
758
755
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -766,7 +763,7 @@ stop after finding the first matching node or continue searching for all matchin
766
763
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
767
764
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setAutoIncrementId">_setAutoIncrementId</a></p>
768
765
  <ul>
769
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1351">src/data-structures/binary-tree/abstract-binary-tree.ts:1351</a></li></ul></aside></li></ul></section>
766
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1377">src/data-structures/binary-tree/abstract-binary-tree.ts:1377</a></li></ul></aside></li></ul></section>
770
767
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setCount" class="tsd-anchor"></a>
771
768
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Count</span><a href="#_setCount" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
772
769
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -780,7 +777,7 @@ stop after finding the first matching node or continue searching for all matchin
780
777
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
781
778
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setCount">_setCount</a></p>
782
779
  <ul>
783
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1375">src/data-structures/binary-tree/abstract-binary-tree.ts:1375</a></li></ul></aside></li></ul></section>
780
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1401">src/data-structures/binary-tree/abstract-binary-tree.ts:1401</a></li></ul></aside></li></ul></section>
784
781
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setIsDuplicatedVal" class="tsd-anchor"></a>
785
782
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Is<wbr/>Duplicated<wbr/>Val</span><a href="#_setIsDuplicatedVal" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
786
783
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -794,7 +791,7 @@ stop after finding the first matching node or continue searching for all matchin
794
791
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
795
792
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setIsDuplicatedVal">_setIsDuplicatedVal</a></p>
796
793
  <ul>
797
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1359">src/data-structures/binary-tree/abstract-binary-tree.ts:1359</a></li></ul></aside></li></ul></section>
794
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1385">src/data-structures/binary-tree/abstract-binary-tree.ts:1385</a></li></ul></aside></li></ul></section>
798
795
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setLoopType" class="tsd-anchor"></a>
799
796
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Loop<wbr/>Type</span><a href="#_setLoopType" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
800
797
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -808,7 +805,7 @@ stop after finding the first matching node or continue searching for all matchin
808
805
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
809
806
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setLoopType">_setLoopType</a></p>
810
807
  <ul>
811
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1327">src/data-structures/binary-tree/abstract-binary-tree.ts:1327</a></li></ul></aside></li></ul></section>
808
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1353">src/data-structures/binary-tree/abstract-binary-tree.ts:1353</a></li></ul></aside></li></ul></section>
812
809
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setMaxId" class="tsd-anchor"></a>
813
810
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Max<wbr/>Id</span><a href="#_setMaxId" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
814
811
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -822,7 +819,7 @@ stop after finding the first matching node or continue searching for all matchin
822
819
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
823
820
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setMaxId">_setMaxId</a></p>
824
821
  <ul>
825
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1355">src/data-structures/binary-tree/abstract-binary-tree.ts:1355</a></li></ul></aside></li></ul></section>
822
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1381">src/data-structures/binary-tree/abstract-binary-tree.ts:1381</a></li></ul></aside></li></ul></section>
826
823
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setRoot" class="tsd-anchor"></a>
827
824
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Root</span><a href="#_setRoot" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
828
825
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -836,7 +833,7 @@ stop after finding the first matching node or continue searching for all matchin
836
833
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
837
834
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setRoot">_setRoot</a></p>
838
835
  <ul>
839
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1363">src/data-structures/binary-tree/abstract-binary-tree.ts:1363</a></li></ul></aside></li></ul></section>
836
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1389">src/data-structures/binary-tree/abstract-binary-tree.ts:1389</a></li></ul></aside></li></ul></section>
840
837
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setSize" class="tsd-anchor"></a>
841
838
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Size</span><a href="#_setSize" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
842
839
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -850,7 +847,7 @@ stop after finding the first matching node or continue searching for all matchin
850
847
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
851
848
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setSize">_setSize</a></p>
852
849
  <ul>
853
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1371">src/data-structures/binary-tree/abstract-binary-tree.ts:1371</a></li></ul></aside></li></ul></section>
850
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1397">src/data-structures/binary-tree/abstract-binary-tree.ts:1397</a></li></ul></aside></li></ul></section>
854
851
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVisitedId" class="tsd-anchor"></a>
855
852
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Visited<wbr/>Id</span><a href="#_setVisitedId" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
856
853
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -864,7 +861,7 @@ stop after finding the first matching node or continue searching for all matchin
864
861
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
865
862
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setVisitedId">_setVisitedId</a></p>
866
863
  <ul>
867
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1331">src/data-structures/binary-tree/abstract-binary-tree.ts:1331</a></li></ul></aside></li></ul></section>
864
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1357">src/data-structures/binary-tree/abstract-binary-tree.ts:1357</a></li></ul></aside></li></ul></section>
868
865
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVisitedLeftSum" class="tsd-anchor"></a>
869
866
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Visited<wbr/>Left<wbr/>Sum</span><a href="#_setVisitedLeftSum" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
870
867
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -878,7 +875,7 @@ stop after finding the first matching node or continue searching for all matchin
878
875
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
879
876
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setVisitedLeftSum">_setVisitedLeftSum</a></p>
880
877
  <ul>
881
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1347">src/data-structures/binary-tree/abstract-binary-tree.ts:1347</a></li></ul></aside></li></ul></section>
878
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1373">src/data-structures/binary-tree/abstract-binary-tree.ts:1373</a></li></ul></aside></li></ul></section>
882
879
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVisitedNode" class="tsd-anchor"></a>
883
880
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Visited<wbr/>Node</span><a href="#_setVisitedNode" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
884
881
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -892,7 +889,7 @@ stop after finding the first matching node or continue searching for all matchin
892
889
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
893
890
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setVisitedNode">_setVisitedNode</a></p>
894
891
  <ul>
895
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1339">src/data-structures/binary-tree/abstract-binary-tree.ts:1339</a></li></ul></aside></li></ul></section>
892
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1365">src/data-structures/binary-tree/abstract-binary-tree.ts:1365</a></li></ul></aside></li></ul></section>
896
893
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVisitedVal" class="tsd-anchor"></a>
897
894
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Visited<wbr/>Val</span><a href="#_setVisitedVal" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
898
895
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -906,7 +903,7 @@ stop after finding the first matching node or continue searching for all matchin
906
903
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
907
904
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setVisitedVal">_setVisitedVal</a></p>
908
905
  <ul>
909
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1335">src/data-structures/binary-tree/abstract-binary-tree.ts:1335</a></li></ul></aside></li></ul></section>
906
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1361">src/data-structures/binary-tree/abstract-binary-tree.ts:1361</a></li></ul></aside></li></ul></section>
910
907
  <section class="tsd-panel tsd-member"><a id="add" class="tsd-anchor"></a>
911
908
  <h3 class="tsd-anchor-link"><span>add</span><a href="#add" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
912
909
  <ul class="tsd-signatures">
@@ -940,9 +937,10 @@ to <code>1</code>, indicating that the value should be inserted once.</p>
940
937
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The method is returning either an N object or null.</p>
941
938
 
942
939
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
940
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#add">add</a></p>
943
941
  <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#add">add</a></p>
944
942
  <ul>
945
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L38">src/data-structures/binary-tree/avl-tree.ts:38</a></li></ul></aside></li></ul></section>
943
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L39">src/data-structures/binary-tree/avl-tree.ts:39</a></li></ul></aside></li></ul></section>
946
944
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="addMany" class="tsd-anchor"></a>
947
945
  <h3 class="tsd-anchor-link"><span>add<wbr/>Many</span><a href="#addMany" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
948
946
  <ul class="tsd-signatures tsd-is-inherited">
@@ -963,37 +961,40 @@ array of <code>N</code> objects.</p>
963
961
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>addMany</code> returns an array of <code>N</code>, <code>null</code>, or <code>undefined</code> values.</p>
964
962
 
965
963
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
964
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#addMany">addMany</a></p>
966
965
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#addMany">addMany</a></p>
967
966
  <ul>
968
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L362">src/data-structures/binary-tree/abstract-binary-tree.ts:362</a></li></ul></aside></li></ul></section>
967
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L380">src/data-structures/binary-tree/abstract-binary-tree.ts:380</a></li></ul></aside></li></ul></section>
969
968
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="addTo" class="tsd-anchor"></a>
970
969
  <h3 class="tsd-anchor-link"><span>add<wbr/>To</span><a href="#addTo" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
971
970
  <ul class="tsd-signatures tsd-is-inherited">
972
971
  <li class="tsd-signature tsd-anchor-link" id="addTo.addTo-1"><span class="tsd-kind-call-signature">add<wbr/>To</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">newNode</span>, <span class="tsd-kind-parameter">parent</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><a href="#addTo.addTo-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
973
972
  <li class="tsd-description">
974
- <div class="tsd-comment tsd-typography"><p>The function inserts a new node into a binary tree as the left or right child of a given parent node.</p>
973
+ <div class="tsd-comment tsd-typography"><p>The function adds a new node to a binary tree as the left or right child of a given parent node.</p>
975
974
  </div>
976
975
  <div class="tsd-parameters">
977
976
  <h4 class="tsd-parameters-title">Parameters</h4>
978
977
  <ul class="tsd-parameter-list">
979
978
  <li>
980
979
  <h5><span class="tsd-kind-parameter">newNode</span>: <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h5>
981
- <div class="tsd-comment tsd-typography"><p>The <code>newNode</code> parameter is an instance of the <code>BinaryTreeNode</code> class or
982
- <code>null</code>. It represents the node that needs to be inserted into the binary tree.</p>
980
+ <div class="tsd-comment tsd-typography"><p>The <code>newNode</code> parameter represents the node that you want to add to the tree. It can be
981
+ either a node object (<code>N</code>) or <code>null</code>.</p>
983
982
  </div>
984
983
  <div class="tsd-comment tsd-typography"></div></li>
985
984
  <li>
986
985
  <h5><span class="tsd-kind-parameter">parent</span>: <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h5>
987
- <div class="tsd-comment tsd-typography"><p>The <code>parent</code> parameter is a BinaryTreeNode object representing the parent node to which the new node
988
- will be inserted as a child.</p>
986
+ <div class="tsd-comment tsd-typography"><p>The <code>parent</code> parameter represents the parent node to which the new node will be added as a
987
+ child.</p>
989
988
  </div>
990
989
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
991
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The method returns the newly inserted node, either as the left child or the right child of the parent node.</p>
990
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>either the left or right child node that was added to the parent node. It can also return <code>null</code> or
991
+ <code>undefined</code> in certain cases.</p>
992
992
 
993
993
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
994
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#addTo">addTo</a></p>
994
995
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#addTo">addTo</a></p>
995
996
  <ul>
996
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L322">src/data-structures/binary-tree/abstract-binary-tree.ts:322</a></li></ul></aside></li></ul></section>
997
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L340">src/data-structures/binary-tree/abstract-binary-tree.ts:340</a></li></ul></aside></li></ul></section>
997
998
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="allGreaterNodesAdd" class="tsd-anchor"></a>
998
999
  <h3 class="tsd-anchor-link"><span>all<wbr/>Greater<wbr/>Nodes<wbr/>Add</span><a href="#allGreaterNodesAdd" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
999
1000
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1027,9 +1028,10 @@ defaults to &#39;id&#39;.</p>
1027
1028
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>a boolean value.</p>
1028
1029
 
1029
1030
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1031
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#allGreaterNodesAdd">allGreaterNodesAdd</a></p>
1030
1032
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#allGreaterNodesAdd">allGreaterNodesAdd</a></p>
1031
1033
  <ul>
1032
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L341">src/data-structures/binary-tree/bst.ts:341</a></li></ul></aside></li></ul></section>
1034
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L362">src/data-structures/binary-tree/bst.ts:362</a></li></ul></aside></li></ul></section>
1033
1035
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="balance" class="tsd-anchor"></a>
1034
1036
  <h3 class="tsd-anchor-link"><span>balance</span><a href="#balance" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1035
1037
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1041,9 +1043,10 @@ recursive or iterative approach.</p>
1041
1043
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The <code>balance()</code> function returns a boolean value.</p>
1042
1044
 
1043
1045
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1046
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#balance">balance</a></p>
1044
1047
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#balance">balance</a></p>
1045
1048
  <ul>
1046
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L392">src/data-structures/binary-tree/bst.ts:392</a></li></ul></aside></li></ul></section>
1049
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L413">src/data-structures/binary-tree/bst.ts:413</a></li></ul></aside></li></ul></section>
1047
1050
  <section class="tsd-panel tsd-member"><a id="balanceFactor" class="tsd-anchor"></a>
1048
1051
  <h3 class="tsd-anchor-link"><span>balance<wbr/>Factor</span><a href="#balanceFactor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1049
1052
  <ul class="tsd-signatures">
@@ -1063,8 +1066,9 @@ height of its right subtree.</p>
1063
1066
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>The balance factor of the given AVL tree node.</p>
1064
1067
 
1065
1068
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1069
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#balanceFactor">balanceFactor</a></p>
1066
1070
  <ul>
1067
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L70">src/data-structures/binary-tree/avl-tree.ts:70</a></li></ul></aside></li></ul></section>
1071
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L71">src/data-structures/binary-tree/avl-tree.ts:71</a></li></ul></aside></li></ul></section>
1068
1072
  <section class="tsd-panel tsd-member"><a id="balanceLL" class="tsd-anchor"></a>
1069
1073
  <h3 class="tsd-anchor-link"><span>balanceLL</span><a href="#balanceLL" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1070
1074
  <ul class="tsd-signatures">
@@ -1082,8 +1086,9 @@ height of its right subtree.</p>
1082
1086
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1083
1087
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
1084
1088
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1089
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#balanceLL">balanceLL</a></p>
1085
1090
  <ul>
1086
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L132">src/data-structures/binary-tree/avl-tree.ts:132</a></li></ul></aside></li></ul></section>
1091
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L133">src/data-structures/binary-tree/avl-tree.ts:133</a></li></ul></aside></li></ul></section>
1087
1092
  <section class="tsd-panel tsd-member"><a id="balanceLR" class="tsd-anchor"></a>
1088
1093
  <h3 class="tsd-anchor-link"><span>balanceLR</span><a href="#balanceLR" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1089
1094
  <ul class="tsd-signatures">
@@ -1101,8 +1106,9 @@ height of its right subtree.</p>
1101
1106
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1102
1107
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
1103
1108
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1109
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#balanceLR">balanceLR</a></p>
1104
1110
  <ul>
1105
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L162">src/data-structures/binary-tree/avl-tree.ts:162</a></li></ul></aside></li></ul></section>
1111
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L163">src/data-structures/binary-tree/avl-tree.ts:163</a></li></ul></aside></li></ul></section>
1106
1112
  <section class="tsd-panel tsd-member"><a id="balancePath" class="tsd-anchor"></a>
1107
1113
  <h3 class="tsd-anchor-link"><span>balance<wbr/>Path</span><a href="#balancePath" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1108
1114
  <ul class="tsd-signatures">
@@ -1121,8 +1127,9 @@ each node in the path from the given node to the root.</p>
1121
1127
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1122
1128
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
1123
1129
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1130
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#balancePath">balancePath</a></p>
1124
1131
  <ul>
1125
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L101">src/data-structures/binary-tree/avl-tree.ts:101</a></li></ul></aside></li></ul></section>
1132
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L102">src/data-structures/binary-tree/avl-tree.ts:102</a></li></ul></aside></li></ul></section>
1126
1133
  <section class="tsd-panel tsd-member"><a id="balanceRL" class="tsd-anchor"></a>
1127
1134
  <h3 class="tsd-anchor-link"><span>balanceRL</span><a href="#balanceRL" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1128
1135
  <ul class="tsd-signatures">
@@ -1140,8 +1147,9 @@ each node in the path from the given node to the root.</p>
1140
1147
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1141
1148
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
1142
1149
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1150
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#balanceRL">balanceRL</a></p>
1143
1151
  <ul>
1144
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L245">src/data-structures/binary-tree/avl-tree.ts:245</a></li></ul></aside></li></ul></section>
1152
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L246">src/data-structures/binary-tree/avl-tree.ts:246</a></li></ul></aside></li></ul></section>
1145
1153
  <section class="tsd-panel tsd-member"><a id="balanceRR" class="tsd-anchor"></a>
1146
1154
  <h3 class="tsd-anchor-link"><span>balanceRR</span><a href="#balanceRR" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1147
1155
  <ul class="tsd-signatures">
@@ -1159,8 +1167,9 @@ each node in the path from the given node to the root.</p>
1159
1167
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1160
1168
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
1161
1169
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1170
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#balanceRR">balanceRR</a></p>
1162
1171
  <ul>
1163
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L210">src/data-structures/binary-tree/avl-tree.ts:210</a></li></ul></aside></li></ul></section>
1172
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L211">src/data-structures/binary-tree/avl-tree.ts:211</a></li></ul></aside></li></ul></section>
1164
1173
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="clear" class="tsd-anchor"></a>
1165
1174
  <h3 class="tsd-anchor-link"><span>clear</span><a href="#clear" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1166
1175
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1170,9 +1179,45 @@ each node in the path from the given node to the root.</p>
1170
1179
  </div>
1171
1180
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
1172
1181
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1182
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#clear">clear</a></p>
1173
1183
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#clear">clear</a></p>
1174
1184
  <ul>
1175
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L246">src/data-structures/binary-tree/abstract-binary-tree.ts:246</a></li></ul></aside></li></ul></section>
1185
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L263">src/data-structures/binary-tree/abstract-binary-tree.ts:263</a></li></ul></aside></li></ul></section>
1186
+ <section class="tsd-panel tsd-member"><a id="createNode" class="tsd-anchor"></a>
1187
+ <h3 class="tsd-anchor-link"><span>create<wbr/>Node</span><a href="#createNode" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1188
+ <ul class="tsd-signatures">
1189
+ <li class="tsd-signature tsd-anchor-link" id="createNode.createNode-1"><span class="tsd-kind-call-signature">create<wbr/>Node</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">id</span>, <span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">count</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><a href="#createNode.createNode-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1190
+ <li class="tsd-description">
1191
+ <div class="tsd-comment tsd-typography"><p>The function creates a new binary search tree node with the given id, value, and count.</p>
1192
+ </div>
1193
+ <div class="tsd-parameters">
1194
+ <h4 class="tsd-parameters-title">Parameters</h4>
1195
+ <ul class="tsd-parameter-list">
1196
+ <li>
1197
+ <h5><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">number</span></h5>
1198
+ <div class="tsd-comment tsd-typography"><p>The <code>id</code> parameter is the identifier for the binary tree node. It is of type
1199
+ <code>BinaryTreeNodeId</code>.</p>
1200
+ </div>
1201
+ <div class="tsd-comment tsd-typography"></div></li>
1202
+ <li>
1203
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span></h5>
1204
+ <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter is the value that will be stored in the node. It can be of any
1205
+ type <code>N[&#39;val&#39;]</code> or <code>null</code>.</p>
1206
+ </div>
1207
+ <div class="tsd-comment tsd-typography"></div></li>
1208
+ <li>
1209
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">count</span>: <span class="tsd-signature-type">number</span></h5>
1210
+ <div class="tsd-comment tsd-typography"><p>The <code>count</code> parameter is an optional parameter that represents the number of occurrences
1211
+ of a particular value in the binary search tree node.</p>
1212
+ </div>
1213
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
1214
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>a new instance of the BSTNode class, casted as type N.</p>
1215
+
1216
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1217
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#createNode">createNode</a></p>
1218
+ <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#createNode">createNode</a></p>
1219
+ <ul>
1220
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L23">src/data-structures/binary-tree/avl-tree.ts:23</a></li></ul></aside></li></ul></section>
1176
1221
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="fill" class="tsd-anchor"></a>
1177
1222
  <h3 class="tsd-anchor-link"><span>fill</span><a href="#fill" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1178
1223
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1193,9 +1238,10 @@ array of <code>N</code> objects.</p>
1193
1238
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The method is returning a boolean value.</p>
1194
1239
 
1195
1240
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1241
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#fill">fill</a></p>
1196
1242
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#fill">fill</a></p>
1197
1243
  <ul>
1198
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L423">src/data-structures/binary-tree/abstract-binary-tree.ts:423</a></li></ul></aside></li></ul></section>
1244
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L441">src/data-structures/binary-tree/abstract-binary-tree.ts:441</a></li></ul></aside></li></ul></section>
1199
1245
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="get" class="tsd-anchor"></a>
1200
1246
  <h3 class="tsd-anchor-link"><span>get</span><a href="#get" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1201
1247
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1222,9 +1268,10 @@ specifies the property name to use for searching the binary search tree nodes. I
1222
1268
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The method is returning a N object or null.</p>
1223
1269
 
1224
1270
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1271
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#get">get</a></p>
1225
1272
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#get">get</a></p>
1226
1273
  <ul>
1227
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L123">src/data-structures/binary-tree/bst.ts:123</a></li></ul></aside></li></ul></section>
1274
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L144">src/data-structures/binary-tree/bst.ts:144</a></li></ul></aside></li></ul></section>
1228
1275
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getDepth" class="tsd-anchor"></a>
1229
1276
  <h3 class="tsd-anchor-link"><span>get<wbr/>Depth</span><a href="#getDepth" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1230
1277
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1244,9 +1291,10 @@ meaning it can represent any type of data that we want to store in the node.</p>
1244
1291
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>The depth of the given binary tree node.</p>
1245
1292
 
1246
1293
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1294
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getDepth">getDepth</a></p>
1247
1295
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getDepth">getDepth</a></p>
1248
1296
  <ul>
1249
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L481">src/data-structures/binary-tree/abstract-binary-tree.ts:481</a></li></ul></aside></li></ul></section>
1297
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L499">src/data-structures/binary-tree/abstract-binary-tree.ts:499</a></li></ul></aside></li></ul></section>
1250
1298
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getHeight" class="tsd-anchor"></a>
1251
1299
  <h3 class="tsd-anchor-link"><span>get<wbr/>Height</span><a href="#getHeight" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1252
1300
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1268,9 +1316,10 @@ If no value is provided for <code>beginRoot</code>, the function will use the <c
1268
1316
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>the height of the binary tree.</p>
1269
1317
 
1270
1318
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1319
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getHeight">getHeight</a></p>
1271
1320
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getHeight">getHeight</a></p>
1272
1321
  <ul>
1273
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L498">src/data-structures/binary-tree/abstract-binary-tree.ts:498</a></li></ul></aside></li></ul></section>
1322
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L516">src/data-structures/binary-tree/abstract-binary-tree.ts:516</a></li></ul></aside></li></ul></section>
1274
1323
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getLeftMost" class="tsd-anchor"></a>
1275
1324
  <h3 class="tsd-anchor-link"><span>get<wbr/>Left<wbr/>Most</span><a href="#getLeftMost" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1276
1325
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1282,9 +1331,10 @@ recursion optimization.</p>
1282
1331
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The <code>getLeftMost</code> function returns the leftmost node in a binary tree.</p>
1283
1332
 
1284
1333
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1334
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getLeftMost">getLeftMost</a></p>
1285
1335
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getLeftMost">getLeftMost</a></p>
1286
1336
  <ul>
1287
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L685">src/data-structures/binary-tree/abstract-binary-tree.ts:685</a></li></ul></aside></li>
1337
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L703">src/data-structures/binary-tree/abstract-binary-tree.ts:703</a></li></ul></aside></li>
1288
1338
  <li class="tsd-signature tsd-anchor-link" id="getLeftMost.getLeftMost-2"><span class="tsd-kind-call-signature">get<wbr/>Left<wbr/>Most</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><a href="#getLeftMost.getLeftMost-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1289
1339
  <li class="tsd-description">
1290
1340
  <div class="tsd-comment tsd-typography"><p>The <code>getLeftMost</code> function returns the leftmost node in a binary tree, either recursively or iteratively using tail
@@ -1302,9 +1352,10 @@ provided, the function will use the root node of the binary tree.</p>
1302
1352
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The <code>getLeftMost</code> function returns the leftmost node in a binary tree.</p>
1303
1353
 
1304
1354
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1355
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getLeftMost">getLeftMost</a></p>
1305
1356
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getLeftMost">getLeftMost</a></p>
1306
1357
  <ul>
1307
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L687">src/data-structures/binary-tree/abstract-binary-tree.ts:687</a></li></ul></aside></li></ul></section>
1358
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L705">src/data-structures/binary-tree/abstract-binary-tree.ts:705</a></li></ul></aside></li></ul></section>
1308
1359
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getMinHeight" class="tsd-anchor"></a>
1309
1360
  <h3 class="tsd-anchor-link"><span>get<wbr/>Min<wbr/>Height</span><a href="#getMinHeight" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1310
1361
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1326,9 +1377,10 @@ tree. If no value is provided for <code>beginRoot</code>, the function will use
1326
1377
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>The function <code>getMinHeight</code> returns the minimum height of the binary tree.</p>
1327
1378
 
1328
1379
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1380
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getMinHeight">getMinHeight</a></p>
1329
1381
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getMinHeight">getMinHeight</a></p>
1330
1382
  <ul>
1331
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L547">src/data-structures/binary-tree/abstract-binary-tree.ts:547</a></li></ul></aside></li></ul></section>
1383
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L565">src/data-structures/binary-tree/abstract-binary-tree.ts:565</a></li></ul></aside></li></ul></section>
1332
1384
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getNodes" class="tsd-anchor"></a>
1333
1385
  <h3 class="tsd-anchor-link"><span>get<wbr/>Nodes</span><a href="#getNodes" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1334
1386
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1363,9 +1415,10 @@ to false or not provided, the function will return all nodes that match the give
1363
1415
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>an array of N objects.</p>
1364
1416
 
1365
1417
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1418
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getNodes">getNodes</a></p>
1366
1419
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getNodes">getNodes</a></p>
1367
1420
  <ul>
1368
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L213">src/data-structures/binary-tree/bst.ts:213</a></li></ul></aside></li></ul></section>
1421
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L234">src/data-structures/binary-tree/bst.ts:234</a></li></ul></aside></li></ul></section>
1369
1422
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getPathToRoot" class="tsd-anchor"></a>
1370
1423
  <h3 class="tsd-anchor-link"><span>get<wbr/>Path<wbr/>To<wbr/>Root</span><a href="#getPathToRoot" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1371
1424
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1386,9 +1439,10 @@ root of a binary tree.</p>
1386
1439
  the given <code>node</code> to the root of the binary tree.</p>
1387
1440
 
1388
1441
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1442
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getPathToRoot">getPathToRoot</a></p>
1389
1443
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getPathToRoot">getPathToRoot</a></p>
1390
1444
  <ul>
1391
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L675">src/data-structures/binary-tree/abstract-binary-tree.ts:675</a></li></ul></aside></li></ul></section>
1445
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L693">src/data-structures/binary-tree/abstract-binary-tree.ts:693</a></li></ul></aside></li></ul></section>
1392
1446
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getPredecessor" class="tsd-anchor"></a>
1393
1447
  <h3 class="tsd-anchor-link"><span>get<wbr/>Predecessor</span><a href="#getPredecessor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1394
1448
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1407,9 +1461,10 @@ the given <code>node</code> to the root of the binary tree.</p>
1407
1461
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>the predecessor of the given node in a binary tree.</p>
1408
1462
 
1409
1463
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1464
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getPredecessor">getPredecessor</a></p>
1410
1465
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getPredecessor">getPredecessor</a></p>
1411
1466
  <ul>
1412
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1205">src/data-structures/binary-tree/abstract-binary-tree.ts:1205</a></li></ul></aside></li></ul></section>
1467
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1231">src/data-structures/binary-tree/abstract-binary-tree.ts:1231</a></li></ul></aside></li></ul></section>
1413
1468
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getRightMost" class="tsd-anchor"></a>
1414
1469
  <h3 class="tsd-anchor-link"><span>get<wbr/>Right<wbr/>Most</span><a href="#getRightMost" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1415
1470
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1421,9 +1476,10 @@ tail recursion optimization.</p>
1421
1476
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The <code>getRightMost</code> function returns the rightmost node in a binary tree.</p>
1422
1477
 
1423
1478
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1479
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getRightMost">getRightMost</a></p>
1424
1480
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getRightMost">getRightMost</a></p>
1425
1481
  <ul>
1426
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L720">src/data-structures/binary-tree/abstract-binary-tree.ts:720</a></li></ul></aside></li>
1482
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L738">src/data-structures/binary-tree/abstract-binary-tree.ts:738</a></li></ul></aside></li>
1427
1483
  <li class="tsd-signature tsd-anchor-link" id="getRightMost.getRightMost-2"><span class="tsd-kind-call-signature">get<wbr/>Right<wbr/>Most</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><a href="#getRightMost.getRightMost-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1428
1484
  <li class="tsd-description">
1429
1485
  <div class="tsd-comment tsd-typography"><p>The <code>getRightMost</code> function returns the rightmost node in a binary tree, either recursively or iteratively using
@@ -1441,9 +1497,10 @@ provided, the function will use the root node of the binary tree.</p>
1441
1497
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The <code>getRightMost</code> function returns the rightmost node in a binary tree.</p>
1442
1498
 
1443
1499
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1500
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getRightMost">getRightMost</a></p>
1444
1501
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getRightMost">getRightMost</a></p>
1445
1502
  <ul>
1446
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L722">src/data-structures/binary-tree/abstract-binary-tree.ts:722</a></li></ul></aside></li></ul></section>
1503
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L740">src/data-structures/binary-tree/abstract-binary-tree.ts:740</a></li></ul></aside></li></ul></section>
1447
1504
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getSubTreeSizeAndCount" class="tsd-anchor"></a>
1448
1505
  <h3 class="tsd-anchor-link"><span>get<wbr/>Sub<wbr/>Tree<wbr/>Size<wbr/>And<wbr/>Count</span><a href="#getSubTreeSizeAndCount" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1449
1506
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1465,9 +1522,10 @@ tree.</p>
1465
1522
  represents the size of the subtree, and the second element represents the count of the nodes in the subtree.</p>
1466
1523
 
1467
1524
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1525
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getSubTreeSizeAndCount">getSubTreeSizeAndCount</a></p>
1468
1526
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getSubTreeSizeAndCount">getSubTreeSizeAndCount</a></p>
1469
1527
  <ul>
1470
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L799">src/data-structures/binary-tree/abstract-binary-tree.ts:799</a></li></ul></aside></li></ul></section>
1528
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L825">src/data-structures/binary-tree/abstract-binary-tree.ts:825</a></li></ul></aside></li></ul></section>
1471
1529
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="has" class="tsd-anchor"></a>
1472
1530
  <h3 class="tsd-anchor-link"><span>has</span><a href="#has" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1473
1531
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1494,9 +1552,10 @@ specifies the name of the property to check for in the nodes.</p>
1494
1552
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>a boolean value.</p>
1495
1553
 
1496
1554
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1555
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#has">has</a></p>
1497
1556
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#has">has</a></p>
1498
1557
  <ul>
1499
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L650">src/data-structures/binary-tree/abstract-binary-tree.ts:650</a></li></ul></aside></li></ul></section>
1558
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L668">src/data-structures/binary-tree/abstract-binary-tree.ts:668</a></li></ul></aside></li></ul></section>
1500
1559
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isAVLBalanced" class="tsd-anchor"></a>
1501
1560
  <h3 class="tsd-anchor-link"><span>isAVLBalanced</span><a href="#isAVLBalanced" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1502
1561
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1508,32 +1567,55 @@ specifies the name of the property to check for in the nodes.</p>
1508
1567
  is balanced according to the AVL tree property, and <code>false</code> otherwise.</p>
1509
1568
 
1510
1569
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1570
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isAVLBalanced">isAVLBalanced</a></p>
1511
1571
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isAVLBalanced">isAVLBalanced</a></p>
1512
1572
  <ul>
1513
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L433">src/data-structures/binary-tree/bst.ts:433</a></li></ul></aside></li></ul></section>
1573
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L454">src/data-structures/binary-tree/bst.ts:454</a></li></ul></aside></li></ul></section>
1514
1574
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isBST" class="tsd-anchor"></a>
1515
1575
  <h3 class="tsd-anchor-link"><span>isBST</span><a href="#isBST" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1516
1576
  <ul class="tsd-signatures tsd-is-inherited">
1517
1577
  <li class="tsd-signature tsd-anchor-link" id="isBST.isBST-1"><span class="tsd-kind-call-signature">isBST</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#isBST.isBST-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1518
1578
  <li class="tsd-description">
1519
- <div class="tsd-comment tsd-typography"><p>The <code>isBST</code> function checks if a binary tree is a binary search tree.</p>
1579
+ <div class="tsd-comment tsd-typography"><p>The function checks if a binary tree is a binary search tree.</p>
1520
1580
  </div>
1521
1581
  <div class="tsd-parameters">
1522
1582
  <h4 class="tsd-parameters-title">Parameters</h4>
1523
1583
  <ul class="tsd-parameter-list">
1524
1584
  <li>
1525
1585
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">node</span>: <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h5>
1526
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is an optional parameter of type <code>N | null</code>. It represents the root node of the binary search tree (BST) that we want to check for validity. If no node
1527
- is provided, the function will default to using the root node of the BST instance that</p>
1586
+ <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is of type <code>N</code> or <code>null</code>. It represents the root node of a binary
1587
+ search tree (BST).</p>
1528
1588
  </div>
1529
1589
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1530
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The <code>isBST</code> function returns a boolean value. It returns <code>true</code> if the binary tree is a valid binary search
1531
- tree, and <code>false</code> otherwise.</p>
1590
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>a boolean value.</p>
1532
1591
 
1533
1592
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1593
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isBST">isBST</a></p>
1534
1594
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isBST">isBST</a></p>
1535
1595
  <ul>
1536
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L762">src/data-structures/binary-tree/abstract-binary-tree.ts:762</a></li></ul></aside></li></ul></section>
1596
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L813">src/data-structures/binary-tree/abstract-binary-tree.ts:813</a></li></ul></aside></li></ul></section>
1597
+ <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isBSTByRooted" class="tsd-anchor"></a>
1598
+ <h3 class="tsd-anchor-link"><span>isBSTBy<wbr/>Rooted</span><a href="#isBSTByRooted" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1599
+ <ul class="tsd-signatures tsd-is-inherited">
1600
+ <li class="tsd-signature tsd-anchor-link" id="isBSTByRooted.isBSTByRooted-1"><span class="tsd-kind-call-signature">isBSTBy<wbr/>Rooted</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#isBSTByRooted.isBSTByRooted-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1601
+ <li class="tsd-description">
1602
+ <div class="tsd-comment tsd-typography"><p>The function <code>isBSTByRooted</code> checks if a binary tree is a binary search tree (BST) by rooted traversal.</p>
1603
+ </div>
1604
+ <div class="tsd-parameters">
1605
+ <h4 class="tsd-parameters-title">Parameters</h4>
1606
+ <ul class="tsd-parameter-list">
1607
+ <li>
1608
+ <h5><span class="tsd-kind-parameter">node</span>: <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span></h5>
1609
+ <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter represents the root node of a binary search tree (BST).</p>
1610
+ </div>
1611
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
1612
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>a boolean value.</p>
1613
+
1614
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1615
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isBSTByRooted">isBSTByRooted</a></p>
1616
+ <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isBSTByRooted">isBSTByRooted</a></p>
1617
+ <ul>
1618
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L778">src/data-structures/binary-tree/abstract-binary-tree.ts:778</a></li></ul></aside></li></ul></section>
1537
1619
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isBalanced" class="tsd-anchor"></a>
1538
1620
  <h3 class="tsd-anchor-link"><span>is<wbr/>Balanced</span><a href="#isBalanced" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1539
1621
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1553,9 +1635,10 @@ of type <code>N | null</code>, which means it can either be a <code>BinaryTreeNo
1553
1635
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The method is returning a boolean value.</p>
1554
1636
 
1555
1637
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1638
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isBalanced">isBalanced</a></p>
1556
1639
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isBalanced">isBalanced</a></p>
1557
1640
  <ul>
1558
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L595">src/data-structures/binary-tree/abstract-binary-tree.ts:595</a></li></ul></aside></li></ul></section>
1641
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L613">src/data-structures/binary-tree/abstract-binary-tree.ts:613</a></li></ul></aside></li></ul></section>
1559
1642
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isEmpty" class="tsd-anchor"></a>
1560
1643
  <h3 class="tsd-anchor-link"><span>is<wbr/>Empty</span><a href="#isEmpty" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1561
1644
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1566,9 +1649,10 @@ of type <code>N | null</code>, which means it can either be a <code>BinaryTreeNo
1566
1649
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>A boolean value indicating whether the size of the object is 0 or not.</p>
1567
1650
 
1568
1651
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1652
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isEmpty">isEmpty</a></p>
1569
1653
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isEmpty">isEmpty</a></p>
1570
1654
  <ul>
1571
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L257">src/data-structures/binary-tree/abstract-binary-tree.ts:257</a></li></ul></aside></li></ul></section>
1655
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L274">src/data-structures/binary-tree/abstract-binary-tree.ts:274</a></li></ul></aside></li></ul></section>
1572
1656
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="lastKey" class="tsd-anchor"></a>
1573
1657
  <h3 class="tsd-anchor-link"><span>last<wbr/>Key</span><a href="#lastKey" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1574
1658
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1583,9 +1667,10 @@ greater than, it returns the ID of the leftmost node. Otherwise, it also returns
1583
1667
  there are no nodes in</p>
1584
1668
 
1585
1669
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1670
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#lastKey">lastKey</a></p>
1586
1671
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#lastKey">lastKey</a></p>
1587
1672
  <ul>
1588
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L136">src/data-structures/binary-tree/bst.ts:136</a></li></ul></aside></li></ul></section>
1673
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L157">src/data-structures/binary-tree/bst.ts:157</a></li></ul></aside></li></ul></section>
1589
1674
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="lesserSum" class="tsd-anchor"></a>
1590
1675
  <h3 class="tsd-anchor-link"><span>lesser<wbr/>Sum</span><a href="#lesserSum" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1591
1676
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1613,9 +1698,10 @@ specifies the property of the binary tree node to use for calculating the sum. I
1613
1698
  binary search tree that have a property value lesser than the given <code>id</code>.</p>
1614
1699
 
1615
1700
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1701
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#lesserSum">lesserSum</a></p>
1616
1702
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#lesserSum">lesserSum</a></p>
1617
1703
  <ul>
1618
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/bst.ts#L264">src/data-structures/binary-tree/bst.ts:264</a></li></ul></aside></li></ul></section>
1704
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/bst.ts#L285">src/data-structures/binary-tree/bst.ts:285</a></li></ul></aside></li></ul></section>
1619
1705
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="levelIterative" class="tsd-anchor"></a>
1620
1706
  <h3 class="tsd-anchor-link"><span>level<wbr/>Iterative</span><a href="#levelIterative" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1621
1707
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1634,12 +1720,13 @@ node for the level order traversal. It can be null if no specific node is provid
1634
1720
  the tree is used as the starting node.</p>
1635
1721
  </div>
1636
1722
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1637
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
1723
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1638
1724
 
1639
1725
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1726
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1640
1727
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1641
1728
  <ul>
1642
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1082">src/data-structures/binary-tree/abstract-binary-tree.ts:1082</a></li></ul></aside></li>
1729
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1108">src/data-structures/binary-tree/abstract-binary-tree.ts:1108</a></li></ul></aside></li>
1643
1730
  <li class="tsd-signature tsd-anchor-link" id="levelIterative.levelIterative-2"><span class="tsd-kind-call-signature">level<wbr/>Iterative</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#levelIterative.levelIterative-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1644
1731
  <li class="tsd-description">
1645
1732
  <div class="tsd-comment tsd-typography"><p>The <code>levelIterative</code> function performs a level-order traversal on a binary tree and returns the values of the nodes
@@ -1663,12 +1750,13 @@ will accumulate results based on that property. If no property name is provided,
1663
1750
  accumulating results</p>
1664
1751
  </div>
1665
1752
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1666
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
1753
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1667
1754
 
1668
1755
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1756
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1669
1757
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1670
1758
  <ul>
1671
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1084">src/data-structures/binary-tree/abstract-binary-tree.ts:1084</a></li></ul></aside></li>
1759
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1110">src/data-structures/binary-tree/abstract-binary-tree.ts:1110</a></li></ul></aside></li>
1672
1760
  <li class="tsd-signature tsd-anchor-link" id="levelIterative.levelIterative-3"><span class="tsd-kind-call-signature">level<wbr/>Iterative</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span><a href="#levelIterative.levelIterative-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1673
1761
  <li class="tsd-description">
1674
1762
  <div class="tsd-comment tsd-typography"><p>The <code>levelIterative</code> function performs a level-order traversal on a binary tree and returns the values of the nodes
@@ -1692,12 +1780,13 @@ will accumulate results based on that property. If no property name is provided,
1692
1780
  accumulating results</p>
1693
1781
  </div>
1694
1782
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1695
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
1783
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1696
1784
 
1697
1785
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1786
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1698
1787
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1699
1788
  <ul>
1700
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1086">src/data-structures/binary-tree/abstract-binary-tree.ts:1086</a></li></ul></aside></li>
1789
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1112">src/data-structures/binary-tree/abstract-binary-tree.ts:1112</a></li></ul></aside></li>
1701
1790
  <li class="tsd-signature tsd-anchor-link" id="levelIterative.levelIterative-4"><span class="tsd-kind-call-signature">level<wbr/>Iterative</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><a href="#levelIterative.levelIterative-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1702
1791
  <li class="tsd-description">
1703
1792
  <div class="tsd-comment tsd-typography"><p>The <code>levelIterative</code> function performs a level-order traversal on a binary tree and returns the values of the nodes
@@ -1721,12 +1810,13 @@ will accumulate results based on that property. If no property name is provided,
1721
1810
  accumulating results</p>
1722
1811
  </div>
1723
1812
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1724
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
1813
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1725
1814
 
1726
1815
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1816
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1727
1817
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1728
1818
  <ul>
1729
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1088">src/data-structures/binary-tree/abstract-binary-tree.ts:1088</a></li></ul></aside></li>
1819
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1114">src/data-structures/binary-tree/abstract-binary-tree.ts:1114</a></li></ul></aside></li>
1730
1820
  <li class="tsd-signature tsd-anchor-link" id="levelIterative.levelIterative-5"><span class="tsd-kind-call-signature">level<wbr/>Iterative</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#levelIterative.levelIterative-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1731
1821
  <li class="tsd-description">
1732
1822
  <div class="tsd-comment tsd-typography"><p>The <code>levelIterative</code> function performs a level-order traversal on a binary tree and returns the values of the nodes
@@ -1750,12 +1840,13 @@ will accumulate results based on that property. If no property name is provided,
1750
1840
  accumulating results</p>
1751
1841
  </div>
1752
1842
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1753
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
1843
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>levelIterative</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1754
1844
 
1755
1845
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1846
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1756
1847
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1757
1848
  <ul>
1758
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1090">src/data-structures/binary-tree/abstract-binary-tree.ts:1090</a></li></ul></aside></li></ul></section>
1849
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1116">src/data-structures/binary-tree/abstract-binary-tree.ts:1116</a></li></ul></aside></li></ul></section>
1759
1850
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="listLevels" class="tsd-anchor"></a>
1760
1851
  <h3 class="tsd-anchor-link"><span>list<wbr/>Levels</span><a href="#listLevels" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1761
1852
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1772,12 +1863,13 @@ accumulating results</p>
1772
1863
  root node of a binary tree. If it is null, the function will use the root node of the current binary tree instance.</p>
1773
1864
  </div>
1774
1865
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1775
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractResultByProperty&lt;N&gt;</code> objects.</p>
1866
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractBinaryTreeNodeProperty&lt;N&gt;</code> objects.</p>
1776
1867
 
1777
1868
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1869
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1778
1870
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1779
1871
  <ul>
1780
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1128">src/data-structures/binary-tree/abstract-binary-tree.ts:1128</a></li></ul></aside></li>
1872
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1154">src/data-structures/binary-tree/abstract-binary-tree.ts:1154</a></li></ul></aside></li>
1781
1873
  <li class="tsd-signature tsd-anchor-link" id="listLevels.listLevels-2"><span class="tsd-kind-call-signature">list<wbr/>Levels</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span><a href="#listLevels.listLevels-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1782
1874
  <li class="tsd-description">
1783
1875
  <div class="tsd-comment tsd-typography"><p>The <code>listLevels</code> function collects nodes from a binary tree by a specified property and organizes them into levels.</p>
@@ -1798,12 +1890,13 @@ specifies the property of the <code>BinaryTreeNode</code> object to collect at e
1798
1890
  values:</p>
1799
1891
  </div>
1800
1892
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1801
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractResultByProperty&lt;N&gt;</code> objects.</p>
1893
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractBinaryTreeNodeProperty&lt;N&gt;</code> objects.</p>
1802
1894
 
1803
1895
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1896
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1804
1897
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1805
1898
  <ul>
1806
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1130">src/data-structures/binary-tree/abstract-binary-tree.ts:1130</a></li></ul></aside></li>
1899
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1156">src/data-structures/binary-tree/abstract-binary-tree.ts:1156</a></li></ul></aside></li>
1807
1900
  <li class="tsd-signature tsd-anchor-link" id="listLevels.listLevels-3"><span class="tsd-kind-call-signature">list<wbr/>Levels</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span><a href="#listLevels.listLevels-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1808
1901
  <li class="tsd-description">
1809
1902
  <div class="tsd-comment tsd-typography"><p>The <code>listLevels</code> function collects nodes from a binary tree by a specified property and organizes them into levels.</p>
@@ -1824,12 +1917,13 @@ specifies the property of the <code>BinaryTreeNode</code> object to collect at e
1824
1917
  values:</p>
1825
1918
  </div>
1826
1919
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1827
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractResultByProperty&lt;N&gt;</code> objects.</p>
1920
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractBinaryTreeNodeProperty&lt;N&gt;</code> objects.</p>
1828
1921
 
1829
1922
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1923
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1830
1924
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1831
1925
  <ul>
1832
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1132">src/data-structures/binary-tree/abstract-binary-tree.ts:1132</a></li></ul></aside></li>
1926
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1158">src/data-structures/binary-tree/abstract-binary-tree.ts:1158</a></li></ul></aside></li>
1833
1927
  <li class="tsd-signature tsd-anchor-link" id="listLevels.listLevels-4"><span class="tsd-kind-call-signature">list<wbr/>Levels</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span><a href="#listLevels.listLevels-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1834
1928
  <li class="tsd-description">
1835
1929
  <div class="tsd-comment tsd-typography"><p>The <code>listLevels</code> function collects nodes from a binary tree by a specified property and organizes them into levels.</p>
@@ -1850,12 +1944,13 @@ specifies the property of the <code>BinaryTreeNode</code> object to collect at e
1850
1944
  values:</p>
1851
1945
  </div>
1852
1946
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1853
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractResultByProperty&lt;N&gt;</code> objects.</p>
1947
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractBinaryTreeNodeProperty&lt;N&gt;</code> objects.</p>
1854
1948
 
1855
1949
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1950
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1856
1951
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1857
1952
  <ul>
1858
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1134">src/data-structures/binary-tree/abstract-binary-tree.ts:1134</a></li></ul></aside></li>
1953
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1160">src/data-structures/binary-tree/abstract-binary-tree.ts:1160</a></li></ul></aside></li>
1859
1954
  <li class="tsd-signature tsd-anchor-link" id="listLevels.listLevels-5"><span class="tsd-kind-call-signature">list<wbr/>Levels</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">node</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span><a href="#listLevels.listLevels-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1860
1955
  <li class="tsd-description">
1861
1956
  <div class="tsd-comment tsd-typography"><p>The <code>listLevels</code> function collects nodes from a binary tree by a specified property and organizes them into levels.</p>
@@ -1876,12 +1971,13 @@ specifies the property of the <code>BinaryTreeNode</code> object to collect at e
1876
1971
  values:</p>
1877
1972
  </div>
1878
1973
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1879
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractResultByProperty&lt;N&gt;</code> objects.</p>
1974
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>listLevels</code> returns a 2D array of <code>AbstractBinaryTreeNodeProperty&lt;N&gt;</code> objects.</p>
1880
1975
 
1881
1976
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1977
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1882
1978
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1883
1979
  <ul>
1884
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1136">src/data-structures/binary-tree/abstract-binary-tree.ts:1136</a></li></ul></aside></li></ul></section>
1980
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1162">src/data-structures/binary-tree/abstract-binary-tree.ts:1162</a></li></ul></aside></li></ul></section>
1885
1981
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="morris" class="tsd-anchor"></a>
1886
1982
  <h3 class="tsd-anchor-link"><span>morris</span><a href="#morris" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1887
1983
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1892,12 +1988,13 @@ traversal algorithm and returns the results based on the specified property name
1892
1988
  The time complexity of Morris traversal is O(n), it&#39;s may slower than others
1893
1989
  The space complexity Morris traversal is O(1) because no using stack</p>
1894
1990
  </div>
1895
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
1991
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1896
1992
 
1897
1993
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1994
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
1898
1995
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
1899
1996
  <ul>
1900
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1219">src/data-structures/binary-tree/abstract-binary-tree.ts:1219</a></li></ul></aside></li>
1997
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1245">src/data-structures/binary-tree/abstract-binary-tree.ts:1245</a></li></ul></aside></li>
1901
1998
  <li class="tsd-signature tsd-anchor-link" id="morris.morris-2"><span class="tsd-kind-call-signature">morris</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#morris.morris-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1902
1999
  <li class="tsd-description">
1903
2000
  <div class="tsd-comment tsd-typography"><p>The <code>morris</code> function performs an in-order, pre-order, or post-order traversal on a binary tree using the Morris
@@ -1921,12 +2018,13 @@ property of the nodes that you want to retrieve in the results. It can be either
1921
2018
  property. If not provided, it defaults to <code>&#39;id&#39;</code>.</p>
1922
2019
  </div>
1923
2020
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1924
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
2021
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1925
2022
 
1926
2023
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
2024
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
1927
2025
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
1928
2026
  <ul>
1929
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1221">src/data-structures/binary-tree/abstract-binary-tree.ts:1221</a></li></ul></aside></li>
2027
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1247">src/data-structures/binary-tree/abstract-binary-tree.ts:1247</a></li></ul></aside></li>
1930
2028
  <li class="tsd-signature tsd-anchor-link" id="morris.morris-3"><span class="tsd-kind-call-signature">morris</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><a href="#morris.morris-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1931
2029
  <li class="tsd-description">
1932
2030
  <div class="tsd-comment tsd-typography"><p>The <code>morris</code> function performs an in-order, pre-order, or post-order traversal on a binary tree using the Morris
@@ -1950,12 +2048,13 @@ property of the nodes that you want to retrieve in the results. It can be either
1950
2048
  property. If not provided, it defaults to <code>&#39;id&#39;</code>.</p>
1951
2049
  </div>
1952
2050
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1953
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
2051
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1954
2052
 
1955
2053
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
2054
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
1956
2055
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
1957
2056
  <ul>
1958
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1223">src/data-structures/binary-tree/abstract-binary-tree.ts:1223</a></li></ul></aside></li>
2057
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1249">src/data-structures/binary-tree/abstract-binary-tree.ts:1249</a></li></ul></aside></li>
1959
2058
  <li class="tsd-signature tsd-anchor-link" id="morris.morris-4"><span class="tsd-kind-call-signature">morris</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span><a href="#morris.morris-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1960
2059
  <li class="tsd-description">
1961
2060
  <div class="tsd-comment tsd-typography"><p>The <code>morris</code> function performs an in-order, pre-order, or post-order traversal on a binary tree using the Morris
@@ -1979,12 +2078,13 @@ property of the nodes that you want to retrieve in the results. It can be either
1979
2078
  property. If not provided, it defaults to <code>&#39;id&#39;</code>.</p>
1980
2079
  </div>
1981
2080
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1982
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
2081
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
1983
2082
 
1984
2083
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
2084
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
1985
2085
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
1986
2086
  <ul>
1987
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1225">src/data-structures/binary-tree/abstract-binary-tree.ts:1225</a></li></ul></aside></li>
2087
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1251">src/data-structures/binary-tree/abstract-binary-tree.ts:1251</a></li></ul></aside></li>
1988
2088
  <li class="tsd-signature tsd-anchor-link" id="morris.morris-5"><span class="tsd-kind-call-signature">morris</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">pattern</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">nodeOrPropertyName</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><a href="#morris.morris-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1989
2089
  <li class="tsd-description">
1990
2090
  <div class="tsd-comment tsd-typography"><p>The <code>morris</code> function performs an in-order, pre-order, or post-order traversal on a binary tree using the Morris
@@ -2008,12 +2108,13 @@ property of the nodes that you want to retrieve in the results. It can be either
2008
2108
  property. If not provided, it defaults to <code>&#39;id&#39;</code>.</p>
2009
2109
  </div>
2010
2110
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
2011
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractResultsByProperty&lt;N&gt;</code>.</p>
2111
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>morris</code> returns an object of type <code>AbstractBinaryTreeNodeProperties&lt;N&gt;</code>.</p>
2012
2112
 
2013
2113
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
2114
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
2014
2115
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
2015
2116
  <ul>
2016
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1227">src/data-structures/binary-tree/abstract-binary-tree.ts:1227</a></li></ul></aside></li></ul></section>
2117
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1253">src/data-structures/binary-tree/abstract-binary-tree.ts:1253</a></li></ul></aside></li></ul></section>
2017
2118
  <section class="tsd-panel tsd-member"><a id="remove" class="tsd-anchor"></a>
2018
2119
  <h3 class="tsd-anchor-link"><span>remove</span><a href="#remove" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
2019
2120
  <ul class="tsd-signatures">
@@ -2041,9 +2142,10 @@ determines whether the left sum of all nodes in the AVL tree should be updated a
2041
2142
  <h4 class="tsd-returns-title">Returns <a href="../types/BinaryTreeDeletedResult.html" class="tsd-signature-type tsd-kind-type-alias">BinaryTreeDeletedResult</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span></h4><p>The method is returning an array of <code>AVLTreeDeleted&lt;N&gt;</code> objects.</p>
2042
2143
 
2043
2144
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
2145
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#remove">remove</a></p>
2044
2146
  <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#remove">remove</a></p>
2045
2147
  <ul>
2046
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L54">src/data-structures/binary-tree/avl-tree.ts:54</a></li></ul></aside></li></ul></section>
2148
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L55">src/data-structures/binary-tree/avl-tree.ts:55</a></li></ul></aside></li></ul></section>
2047
2149
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="setVisitedCount" class="tsd-anchor"></a>
2048
2150
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>set<wbr/>Visited<wbr/>Count</span><a href="#setVisitedCount" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
2049
2151
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -2057,7 +2159,7 @@ determines whether the left sum of all nodes in the AVL tree should be updated a
2057
2159
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
2058
2160
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#setVisitedCount">setVisitedCount</a></p>
2059
2161
  <ul>
2060
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1343">src/data-structures/binary-tree/abstract-binary-tree.ts:1343</a></li></ul></aside></li></ul></section>
2162
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L1369">src/data-structures/binary-tree/abstract-binary-tree.ts:1369</a></li></ul></aside></li></ul></section>
2061
2163
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="subTreeAdd" class="tsd-anchor"></a>
2062
2164
  <h3 class="tsd-anchor-link"><span>sub<wbr/>Tree<wbr/>Add</span><a href="#subTreeAdd" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
2063
2165
  <ul class="tsd-signatures tsd-is-inherited">
@@ -2088,9 +2190,10 @@ specifies the property of the <code>BinaryTreeNode</code> that should be modifie
2088
2190
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>a boolean value, which is <code>true</code>.</p>
2089
2191
 
2090
2192
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
2193
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#subTreeAdd">subTreeAdd</a></p>
2091
2194
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#subTreeAdd">subTreeAdd</a></p>
2092
2195
  <ul>
2093
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L896">src/data-structures/binary-tree/abstract-binary-tree.ts:896</a></li></ul></aside></li></ul></section>
2196
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L922">src/data-structures/binary-tree/abstract-binary-tree.ts:922</a></li></ul></aside></li></ul></section>
2094
2197
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="subTreeSum" class="tsd-anchor"></a>
2095
2198
  <h3 class="tsd-anchor-link"><span>sub<wbr/>Tree<wbr/>Sum</span><a href="#subTreeSum" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
2096
2199
  <ul class="tsd-signatures tsd-is-inherited">
@@ -2118,9 +2221,10 @@ provided, it defaults to <code>&#39;val&#39;</code>.</p>
2118
2221
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>a number, which is the sum of the values of the nodes in the subtree rooted at <code>subTreeRoot</code>.</p>
2119
2222
 
2120
2223
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
2224
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#subTreeSum">subTreeSum</a></p>
2121
2225
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#subTreeSum">subTreeSum</a></p>
2122
2226
  <ul>
2123
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/abstract-binary-tree.ts#L840">src/data-structures/binary-tree/abstract-binary-tree.ts:840</a></li></ul></aside></li></ul></section>
2227
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/abstract-binary-tree.ts#L866">src/data-structures/binary-tree/abstract-binary-tree.ts:866</a></li></ul></aside></li></ul></section>
2124
2228
  <section class="tsd-panel tsd-member"><a id="updateHeight" class="tsd-anchor"></a>
2125
2229
  <h3 class="tsd-anchor-link"><span>update<wbr/>Height</span><a href="#updateHeight" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
2126
2230
  <ul class="tsd-signatures">
@@ -2138,8 +2242,9 @@ provided, it defaults to <code>&#39;val&#39;</code>.</p>
2138
2242
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
2139
2243
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
2140
2244
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
2245
+ <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#updateHeight">updateHeight</a></p>
2141
2246
  <ul>
2142
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/binary-tree/avl-tree.ts#L83">src/data-structures/binary-tree/avl-tree.ts:83</a></li></ul></aside></li></ul></section></section></div>
2247
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/binary-tree/avl-tree.ts#L84">src/data-structures/binary-tree/avl-tree.ts:84</a></li></ul></aside></li></ul></section></section></div>
2143
2248
  <div class="col-sidebar">
2144
2249
  <div class="page-menu">
2145
2250
  <div class="tsd-navigation settings">
@@ -2178,7 +2283,6 @@ provided, it defaults to <code>&#39;val&#39;</code>.</p>
2178
2283
  <li><a href="#DFSIterative" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>DFSIterative</span></a></li>
2179
2284
  <li><a href="#_accumulatedByPropertyName" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_accumulated<wbr/>By<wbr/>Property<wbr/>Name</span></a></li>
2180
2285
  <li><a href="#_compare" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_compare</span></a></li>
2181
- <li><a href="#_createNode" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_create<wbr/>Node</span></a></li>
2182
2286
  <li><a href="#_getResultByPropertyName" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Result<wbr/>By<wbr/>Property<wbr/>Name</span></a></li>
2183
2287
  <li><a href="#_pushByPropertyNameStopOrNot" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_push<wbr/>By<wbr/>Property<wbr/>Name<wbr/>Stop<wbr/>Or<wbr/>Not</span></a></li>
2184
2288
  <li><a href="#_resetResults" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_reset<wbr/>Results</span></a></li>
@@ -2205,6 +2309,7 @@ provided, it defaults to <code>&#39;val&#39;</code>.</p>
2205
2309
  <li><a href="#balanceRL" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>balanceRL</span></a></li>
2206
2310
  <li><a href="#balanceRR" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>balanceRR</span></a></li>
2207
2311
  <li><a href="#clear" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>clear</span></a></li>
2312
+ <li><a href="#createNode" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Node</span></a></li>
2208
2313
  <li><a href="#fill" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>fill</span></a></li>
2209
2314
  <li><a href="#get" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get</span></a></li>
2210
2315
  <li><a href="#getDepth" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Depth</span></a></li>
@@ -2219,6 +2324,7 @@ provided, it defaults to <code>&#39;val&#39;</code>.</p>
2219
2324
  <li><a href="#has" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>has</span></a></li>
2220
2325
  <li><a href="#isAVLBalanced" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>isAVLBalanced</span></a></li>
2221
2326
  <li><a href="#isBST" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>isBST</span></a></li>
2327
+ <li><a href="#isBSTByRooted" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>isBSTBy<wbr/>Rooted</span></a></li>
2222
2328
  <li><a href="#isBalanced" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>is<wbr/>Balanced</span></a></li>
2223
2329
  <li><a href="#isEmpty" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>is<wbr/>Empty</span></a></li>
2224
2330
  <li><a href="#lastKey" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>last<wbr/>Key</span></a></li>
@@ -2277,6 +2383,8 @@ provided, it defaults to <code>&#39;val&#39;</code>.</p>
2277
2383
  <li><a href="Pair.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Pair</span></a></li>
2278
2384
  <li><a href="PriorityQueue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Priority<wbr/>Queue</span></a></li>
2279
2385
  <li><a href="Queue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Queue</span></a></li>
2386
+ <li><a href="RBTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>RBTree</span></a></li>
2387
+ <li><a href="RBTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>RBTree<wbr/>Node</span></a></li>
2280
2388
  <li><a href="SegmentTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Segment<wbr/>Tree</span></a></li>
2281
2389
  <li><a href="SegmentTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Segment<wbr/>Tree<wbr/>Node</span></a></li>
2282
2390
  <li><a href="SinglyLinkedList.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Singly<wbr/>Linked<wbr/>List</span></a></li>
@@ -2296,16 +2404,20 @@ provided, it defaults to <code>&#39;val&#39;</code>.</p>
2296
2404
  <li><a href="UndirectedGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Undirected<wbr/>Graph</span></a></li>
2297
2405
  <li><a href="UndirectedVertex.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Undirected<wbr/>Vertex</span></a></li>
2298
2406
  <li><a href="Vector2D.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Vector2D</span></a></li>
2299
- <li><a href="../interfaces/IBinaryTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-256"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.51 16V15.016H11.298V8.224H9.51V7.24H14.19V8.224H12.402V15.016H14.19V16H9.51Z" fill="var(--color-text)"></path></g></svg><span>IBinary<wbr/>Tree</span></a></li>
2300
- <li><a href="../interfaces/IBinaryTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IBinary<wbr/>Tree<wbr/>Node</span></a></li>
2407
+ <li><a href="../interfaces/IAVLTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-256"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.51 16V15.016H11.298V8.224H9.51V7.24H14.19V8.224H12.402V15.016H14.19V16H9.51Z" fill="var(--color-text)"></path></g></svg><span>IAVLTree</span></a></li>
2408
+ <li><a href="../interfaces/IAVLTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IAVLTree<wbr/>Node</span></a></li>
2409
+ <li><a href="../interfaces/IAbstractBinaryTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IAbstract<wbr/>Binary<wbr/>Tree</span></a></li>
2410
+ <li><a href="../interfaces/IAbstractBinaryTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IAbstract<wbr/>Binary<wbr/>Tree<wbr/>Node</span></a></li>
2411
+ <li><a href="../interfaces/IAbstractGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IAbstract<wbr/>Graph</span></a></li>
2412
+ <li><a href="../interfaces/IBST.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IBST</span></a></li>
2413
+ <li><a href="../interfaces/IBSTNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IBSTNode</span></a></li>
2301
2414
  <li><a href="../interfaces/IDirectedGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IDirected<wbr/>Graph</span></a></li>
2302
- <li><a href="../interfaces/IGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IGraph</span></a></li>
2303
2415
  <li><a href="../interfaces/IUNDirectedGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IUNDirected<wbr/>Graph</span></a></li>
2304
2416
  <li><a href="../types/AVLTreeOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-4194304"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M11.31 16V8.224H8.91V7.24H14.79V8.224H12.39V16H11.31Z" fill="var(--color-text)"></path></g></svg><span>AVLTree<wbr/>Options</span></a></li>
2417
+ <li><a href="../types/AbstractBinaryTreeNodeProperties.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Binary<wbr/>Tree<wbr/>Node<wbr/>Properties</span></a></li>
2418
+ <li><a href="../types/AbstractBinaryTreeNodeProperty.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Binary<wbr/>Tree<wbr/>Node<wbr/>Property</span></a></li>
2305
2419
  <li><a href="../types/AbstractBinaryTreeOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Binary<wbr/>Tree<wbr/>Options</span></a></li>
2306
2420
  <li><a href="../types/AbstractRecursiveBinaryTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Recursive<wbr/>Binary<wbr/>Tree<wbr/>Node</span></a></li>
2307
- <li><a href="../types/AbstractResultByProperty.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Result<wbr/>By<wbr/>Property</span></a></li>
2308
- <li><a href="../types/AbstractResultsByProperty.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Results<wbr/>By<wbr/>Property</span></a></li>
2309
2421
  <li><a href="../types/BSTComparator.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>BSTComparator</span></a></li>
2310
2422
  <li><a href="../types/BSTOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>BSTOptions</span></a></li>
2311
2423
  <li><a href="../types/BinaryTreeDeletedResult.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Binary<wbr/>Tree<wbr/>Deleted<wbr/>Result</span></a></li>