data-structure-typed 1.31.0 → 1.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/.gitattributes +112 -0
  2. package/CHANGELOG.md +1 -1
  3. package/CODE-OF-CONDUCT.md +80 -0
  4. package/COMMANDS.md +28 -0
  5. package/SECURITY.md +15 -0
  6. package/coverage/clover.xml +3393 -0
  7. package/coverage/coverage-final.json +67 -0
  8. package/coverage/lcov-report/base.css +224 -0
  9. package/coverage/lcov-report/block-navigation.js +87 -0
  10. package/coverage/lcov-report/favicon.png +0 -0
  11. package/coverage/lcov-report/index.html +386 -0
  12. package/coverage/lcov-report/prettify.css +1 -0
  13. package/coverage/lcov-report/prettify.js +2 -0
  14. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  15. package/coverage/lcov-report/sorter.js +196 -0
  16. package/coverage/lcov-report/src/data-structures/binary-tree/aa-tree.ts.html +88 -0
  17. package/coverage/lcov-report/src/data-structures/binary-tree/abstract-binary-tree.ts.html +4966 -0
  18. package/coverage/lcov-report/src/data-structures/binary-tree/avl-tree.ts.html +1015 -0
  19. package/coverage/lcov-report/src/data-structures/binary-tree/b-tree.ts.html +88 -0
  20. package/coverage/lcov-report/src/data-structures/binary-tree/binary-indexed-tree.ts.html +313 -0
  21. package/coverage/lcov-report/src/data-structures/binary-tree/binary-tree.ts.html +226 -0
  22. package/coverage/lcov-report/src/data-structures/binary-tree/bst.ts.html +1714 -0
  23. package/coverage/lcov-report/src/data-structures/binary-tree/index.html +296 -0
  24. package/coverage/lcov-report/src/data-structures/binary-tree/index.ts.html +121 -0
  25. package/coverage/lcov-report/src/data-structures/binary-tree/rb-tree.ts.html +388 -0
  26. package/coverage/lcov-report/src/data-structures/binary-tree/segment-tree.ts.html +811 -0
  27. package/coverage/lcov-report/src/data-structures/binary-tree/splay-tree.ts.html +88 -0
  28. package/coverage/lcov-report/src/data-structures/binary-tree/tree-multiset.ts.html +2185 -0
  29. package/coverage/lcov-report/src/data-structures/binary-tree/two-three-tree.ts.html +88 -0
  30. package/coverage/lcov-report/src/data-structures/graph/abstract-graph.ts.html +3205 -0
  31. package/coverage/lcov-report/src/data-structures/graph/directed-graph.ts.html +1495 -0
  32. package/coverage/lcov-report/src/data-structures/graph/index.html +176 -0
  33. package/coverage/lcov-report/src/data-structures/graph/index.ts.html +97 -0
  34. package/coverage/lcov-report/src/data-structures/graph/map-graph.ts.html +472 -0
  35. package/coverage/lcov-report/src/data-structures/graph/undirected-graph.ts.html +907 -0
  36. package/coverage/lcov-report/src/data-structures/hash/coordinate-map.ts.html +286 -0
  37. package/coverage/lcov-report/src/data-structures/hash/coordinate-set.ts.html +253 -0
  38. package/coverage/lcov-report/src/data-structures/hash/hash-table.ts.html +88 -0
  39. package/coverage/lcov-report/src/data-structures/hash/index.html +206 -0
  40. package/coverage/lcov-report/src/data-structures/hash/index.ts.html +103 -0
  41. package/coverage/lcov-report/src/data-structures/hash/pair.ts.html +88 -0
  42. package/coverage/lcov-report/src/data-structures/hash/tree-map.ts.html +88 -0
  43. package/coverage/lcov-report/src/data-structures/hash/tree-set.ts.html +88 -0
  44. package/coverage/lcov-report/src/data-structures/heap/heap.ts.html +721 -0
  45. package/coverage/lcov-report/src/data-structures/heap/index.html +161 -0
  46. package/coverage/lcov-report/src/data-structures/heap/index.ts.html +94 -0
  47. package/coverage/lcov-report/src/data-structures/heap/max-heap.ts.html +178 -0
  48. package/coverage/lcov-report/src/data-structures/heap/min-heap.ts.html +181 -0
  49. package/coverage/lcov-report/src/data-structures/index.html +116 -0
  50. package/coverage/lcov-report/src/data-structures/index.ts.html +118 -0
  51. package/coverage/lcov-report/src/data-structures/linked-list/doubly-linked-list.ts.html +1804 -0
  52. package/coverage/lcov-report/src/data-structures/linked-list/index.html +161 -0
  53. package/coverage/lcov-report/src/data-structures/linked-list/index.ts.html +94 -0
  54. package/coverage/lcov-report/src/data-structures/linked-list/singly-linked-list.ts.html +1588 -0
  55. package/coverage/lcov-report/src/data-structures/linked-list/skip-linked-list.ts.html +88 -0
  56. package/coverage/lcov-report/src/data-structures/matrix/index.html +176 -0
  57. package/coverage/lcov-report/src/data-structures/matrix/index.ts.html +97 -0
  58. package/coverage/lcov-report/src/data-structures/matrix/matrix.ts.html +166 -0
  59. package/coverage/lcov-report/src/data-structures/matrix/matrix2d.ts.html +721 -0
  60. package/coverage/lcov-report/src/data-structures/matrix/navigator.ts.html +448 -0
  61. package/coverage/lcov-report/src/data-structures/matrix/vector2d.ts.html +1033 -0
  62. package/coverage/lcov-report/src/data-structures/priority-queue/index.html +161 -0
  63. package/coverage/lcov-report/src/data-structures/priority-queue/index.ts.html +94 -0
  64. package/coverage/lcov-report/src/data-structures/priority-queue/max-priority-queue.ts.html +253 -0
  65. package/coverage/lcov-report/src/data-structures/priority-queue/min-priority-queue.ts.html +256 -0
  66. package/coverage/lcov-report/src/data-structures/priority-queue/priority-queue.ts.html +1162 -0
  67. package/coverage/lcov-report/src/data-structures/queue/deque.ts.html +976 -0
  68. package/coverage/lcov-report/src/data-structures/queue/index.html +146 -0
  69. package/coverage/lcov-report/src/data-structures/queue/index.ts.html +91 -0
  70. package/coverage/lcov-report/src/data-structures/queue/queue.ts.html +658 -0
  71. package/coverage/lcov-report/src/data-structures/stack/index.html +131 -0
  72. package/coverage/lcov-report/src/data-structures/stack/index.ts.html +88 -0
  73. package/coverage/lcov-report/src/data-structures/stack/stack.ts.html +379 -0
  74. package/coverage/lcov-report/src/data-structures/tree/index.html +131 -0
  75. package/coverage/lcov-report/src/data-structures/tree/index.ts.html +88 -0
  76. package/coverage/lcov-report/src/data-structures/tree/tree.ts.html +292 -0
  77. package/coverage/lcov-report/src/data-structures/trie/index.html +131 -0
  78. package/coverage/lcov-report/src/data-structures/trie/index.ts.html +88 -0
  79. package/coverage/lcov-report/src/data-structures/trie/trie.ts.html +760 -0
  80. package/coverage/lcov-report/src/index.html +116 -0
  81. package/coverage/lcov-report/src/index.ts.html +97 -0
  82. package/coverage/lcov-report/src/interfaces/index.html +116 -0
  83. package/coverage/lcov-report/src/interfaces/index.ts.html +130 -0
  84. package/coverage/lcov-report/src/types/data-structures/abstract-binary-tree.ts.html +235 -0
  85. package/coverage/lcov-report/src/types/data-structures/bst.ts.html +124 -0
  86. package/coverage/lcov-report/src/types/data-structures/directed-graph.ts.html +109 -0
  87. package/coverage/lcov-report/src/types/data-structures/index.html +176 -0
  88. package/coverage/lcov-report/src/types/data-structures/index.ts.html +130 -0
  89. package/coverage/lcov-report/src/types/data-structures/rb-tree.ts.html +106 -0
  90. package/coverage/lcov-report/src/types/index.html +116 -0
  91. package/coverage/lcov-report/src/types/index.ts.html +94 -0
  92. package/coverage/lcov-report/src/types/utils/index.html +116 -0
  93. package/coverage/lcov-report/src/types/utils/index.ts.html +91 -0
  94. package/coverage/lcov-report/src/utils/index.html +131 -0
  95. package/coverage/lcov-report/src/utils/index.ts.html +88 -0
  96. package/coverage/lcov-report/src/utils/utils.ts.html +322 -0
  97. package/coverage/lcov-report/test/utils/index.html +146 -0
  98. package/coverage/lcov-report/test/utils/index.ts.html +91 -0
  99. package/coverage/lcov-report/test/utils/magnitude.ts.html +148 -0
  100. package/coverage/lcov-report/test/utils/number.ts.html +94 -0
  101. package/coverage/lcov.info +6676 -0
  102. package/dist/data-structures/binary-tree/abstract-binary-tree.js.map +1 -1
  103. package/docs/classes/AVLTree.html +205 -282
  104. package/docs/classes/AVLTreeNode.html +15 -15
  105. package/docs/classes/AaTree.html +1 -1
  106. package/docs/classes/AbstractBinaryTree.html +198 -275
  107. package/docs/classes/AbstractBinaryTreeNode.html +21 -21
  108. package/docs/classes/AbstractEdge.html +11 -11
  109. package/docs/classes/AbstractGraph.html +36 -36
  110. package/docs/classes/AbstractVertex.html +8 -8
  111. package/docs/classes/ArrayDeque.html +14 -14
  112. package/docs/classes/BST.html +198 -275
  113. package/docs/classes/BSTNode.html +15 -15
  114. package/docs/classes/BTree.html +1 -1
  115. package/docs/classes/BinaryIndexedTree.html +9 -9
  116. package/docs/classes/BinaryTree.html +191 -268
  117. package/docs/classes/BinaryTreeNode.html +15 -15
  118. package/docs/classes/Character.html +4 -4
  119. package/docs/classes/CoordinateMap.html +9 -9
  120. package/docs/classes/CoordinateSet.html +8 -8
  121. package/docs/classes/Deque.html +34 -34
  122. package/docs/classes/DirectedEdge.html +15 -15
  123. package/docs/classes/DirectedGraph.html +52 -52
  124. package/docs/classes/DirectedVertex.html +6 -6
  125. package/docs/classes/DoublyLinkedList.html +37 -37
  126. package/docs/classes/DoublyLinkedListNode.html +11 -11
  127. package/docs/classes/HashTable.html +1 -1
  128. package/docs/classes/Heap.html +26 -26
  129. package/docs/classes/HeapItem.html +8 -8
  130. package/docs/classes/LinkedListQueue.html +35 -35
  131. package/docs/classes/MapEdge.html +13 -13
  132. package/docs/classes/MapGraph.html +56 -56
  133. package/docs/classes/MapVertex.html +12 -12
  134. package/docs/classes/Matrix2D.html +16 -16
  135. package/docs/classes/MatrixNTI2D.html +4 -4
  136. package/docs/classes/MaxHeap.html +26 -26
  137. package/docs/classes/MaxPriorityQueue.html +34 -34
  138. package/docs/classes/MinHeap.html +26 -26
  139. package/docs/classes/MinPriorityQueue.html +34 -34
  140. package/docs/classes/Navigator.html +10 -10
  141. package/docs/classes/ObjectDeque.html +25 -25
  142. package/docs/classes/Pair.html +1 -1
  143. package/docs/classes/PriorityQueue.html +32 -32
  144. package/docs/classes/Queue.html +22 -22
  145. package/docs/classes/RBTree.html +198 -275
  146. package/docs/classes/RBTreeNode.html +18 -18
  147. package/docs/classes/SegmentTree.html +17 -17
  148. package/docs/classes/SegmentTreeNode.html +20 -20
  149. package/docs/classes/SinglyLinkedList.html +35 -35
  150. package/docs/classes/SinglyLinkedListNode.html +8 -8
  151. package/docs/classes/SkipLinkedList.html +1 -1
  152. package/docs/classes/SplayTree.html +1 -1
  153. package/docs/classes/Stack.html +12 -12
  154. package/docs/classes/TreeMap.html +1 -1
  155. package/docs/classes/TreeMultiset.html +219 -296
  156. package/docs/classes/TreeMultisetNode.html +18 -18
  157. package/docs/classes/TreeNode.html +13 -13
  158. package/docs/classes/TreeSet.html +1 -1
  159. package/docs/classes/Trie.html +13 -13
  160. package/docs/classes/TrieNode.html +11 -11
  161. package/docs/classes/TwoThreeTree.html +1 -1
  162. package/docs/classes/UndirectedEdge.html +12 -12
  163. package/docs/classes/UndirectedGraph.html +40 -40
  164. package/docs/classes/UndirectedVertex.html +6 -6
  165. package/docs/classes/Vector2D.html +28 -28
  166. package/docs/enums/CP.html +4 -4
  167. package/docs/enums/FamilyPosition.html +8 -8
  168. package/docs/enums/LoopType.html +3 -3
  169. package/docs/enums/RBColor.html +3 -3
  170. package/docs/enums/TopologicalProperty.html +4 -4
  171. package/docs/functions/arrayRemove.html +1 -1
  172. package/docs/functions/isThunk.html +1 -1
  173. package/docs/functions/toThunk.html +1 -1
  174. package/docs/functions/trampoline.html +1 -1
  175. package/docs/functions/trampolineAsync.html +1 -1
  176. package/docs/functions/uuidV4.html +1 -1
  177. package/docs/interfaces/IAVLTree.html +77 -77
  178. package/docs/interfaces/IAbstractBinaryTree.html +72 -72
  179. package/docs/interfaces/IAbstractBinaryTreeNode.html +14 -14
  180. package/docs/interfaces/IAbstractGraph.html +15 -15
  181. package/docs/interfaces/IBST.html +77 -77
  182. package/docs/interfaces/IDirectedGraph.html +23 -23
  183. package/docs/interfaces/IRBTree.html +77 -77
  184. package/docs/interfaces/IUNDirectedGraph.html +16 -16
  185. package/docs/types/AVLTreeNodeNested.html +1 -1
  186. package/docs/types/AVLTreeOptions.html +1 -1
  187. package/docs/types/AbstractBinaryTreeNodeNested.html +1 -1
  188. package/docs/types/AbstractBinaryTreeNodeProperties.html +1 -1
  189. package/docs/types/AbstractBinaryTreeNodeProperty.html +1 -1
  190. package/docs/types/AbstractBinaryTreeOptions.html +1 -1
  191. package/docs/types/BSTComparator.html +1 -1
  192. package/docs/types/BSTNodeNested.html +1 -1
  193. package/docs/types/BSTOptions.html +1 -1
  194. package/docs/types/BinaryTreeDeletedResult.html +1 -1
  195. package/docs/types/BinaryTreeNodeId.html +1 -1
  196. package/docs/types/BinaryTreeNodeNested.html +1 -1
  197. package/docs/types/BinaryTreeNodePropertyName.html +1 -1
  198. package/docs/types/BinaryTreeOptions.html +1 -1
  199. package/docs/types/DFSOrderPattern.html +1 -1
  200. package/docs/types/DijkstraResult.html +1 -1
  201. package/docs/types/Direction.html +1 -1
  202. package/docs/types/DummyAny.html +1 -1
  203. package/docs/types/EdgeId.html +1 -1
  204. package/docs/types/HeapOptions.html +1 -1
  205. package/docs/types/IAVLTreeNode.html +1 -1
  206. package/docs/types/IBSTNode.html +1 -1
  207. package/docs/types/IBinaryTree.html +1 -1
  208. package/docs/types/IBinaryTreeNode.html +1 -1
  209. package/docs/types/IRBTreeNode.html +1 -1
  210. package/docs/types/ITreeMultiset.html +1 -1
  211. package/docs/types/ITreeMultisetNode.html +1 -1
  212. package/docs/types/KeyValueObject.html +1 -1
  213. package/docs/types/KeyValueObjectWithId.html +1 -1
  214. package/docs/types/MapGraphCoordinate.html +1 -1
  215. package/docs/types/NavigatorParams.html +1 -1
  216. package/docs/types/NodeOrPropertyName.html +1 -1
  217. package/docs/types/NonNumberNonObjectButDefined.html +1 -1
  218. package/docs/types/ObjectWithNonNumberId.html +1 -1
  219. package/docs/types/ObjectWithNumberId.html +1 -1
  220. package/docs/types/ObjectWithoutId.html +1 -1
  221. package/docs/types/PriorityQueueComparator.html +1 -1
  222. package/docs/types/PriorityQueueDFSOrderPattern.html +1 -1
  223. package/docs/types/PriorityQueueOptions.html +1 -1
  224. package/docs/types/RBTreeNodeNested.html +1 -1
  225. package/docs/types/RBTreeOptions.html +1 -1
  226. package/docs/types/RestrictValById.html +1 -1
  227. package/docs/types/SegmentTreeNodeVal.html +1 -1
  228. package/docs/types/SpecifyOptional.html +1 -1
  229. package/docs/types/Thunk.html +1 -1
  230. package/docs/types/ToThunkFn.html +1 -1
  231. package/docs/types/TopologicalStatus.html +1 -1
  232. package/docs/types/TreeMultisetNodeNested.html +1 -1
  233. package/docs/types/TreeMultisetOptions.html +1 -1
  234. package/docs/types/TrlAsyncFn.html +1 -1
  235. package/docs/types/TrlFn.html +1 -1
  236. package/docs/types/Turning.html +1 -1
  237. package/docs/types/VertexId.html +1 -1
  238. package/docs/variables/THUNK_SYMBOL.html +1 -1
  239. package/jest.config.js +5 -3
  240. package/lib/data-structures/binary-tree/abstract-binary-tree.d.ts +169 -2
  241. package/lib/data-structures/binary-tree/abstract-binary-tree.js +31 -47
  242. package/package.json +26 -23
  243. package/test/unit/data-structures/linked-list/singly-linked-list.test.ts +1 -1
  244. package/test/unit/data-structures/priority-queue/max-priority-queue.test.ts +3 -1
  245. package/tsconfig.json +1 -1
  246. package/umd/bundle.min.js.map +1 -1
@@ -33,7 +33,7 @@
33
33
  <ul class="tsd-hierarchy">
34
34
  <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">
35
35
  <ul>
36
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L21">src/data-structures/binary-tree/avl-tree.ts:21</a></li></ul></aside>
36
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L21">src/data-structures/binary-tree/avl-tree.ts:21</a></li></ul></aside>
37
37
  <section class="tsd-panel-group tsd-index-group">
38
38
  <section class="tsd-panel tsd-index-panel">
39
39
  <details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
@@ -143,7 +143,7 @@ options.</p>
143
143
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
144
144
  <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#constructor">constructor</a></p>
145
145
  <ul>
146
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L28">src/data-structures/binary-tree/avl-tree.ts:28</a></li></ul></aside></li></ul></section></section>
146
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L28">src/data-structures/binary-tree/avl-tree.ts:28</a></li></ul></aside></li></ul></section></section>
147
147
  <section class="tsd-panel-group tsd-member-group">
148
148
  <h2>Properties</h2>
149
149
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_comparator" class="tsd-anchor"></a>
@@ -151,7 +151,7 @@ options.</p>
151
151
  <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">
152
152
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_comparator">_comparator</a></p>
153
153
  <ul>
154
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L525">src/data-structures/binary-tree/bst.ts:525</a></li></ul></aside></section></section>
154
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L525">src/data-structures/binary-tree/bst.ts:525</a></li></ul></aside></section></section>
155
155
  <section class="tsd-panel-group tsd-member-group">
156
156
  <h2>Accessors</h2>
157
157
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="loopType" class="tsd-anchor"></a>
@@ -163,7 +163,7 @@ options.</p>
163
163
  <p>Implementation of IAVLTree.loopType</p>
164
164
  <p>Inherited from BST.loopType</p>
165
165
  <ul>
166
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L168">src/data-structures/binary-tree/abstract-binary-tree.ts:168</a></li></ul></aside></li></ul></section>
166
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L164">src/data-structures/binary-tree/abstract-binary-tree.ts:164</a></li></ul></aside></li></ul></section>
167
167
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="root" class="tsd-anchor"></a>
168
168
  <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>
169
169
  <ul class="tsd-signatures tsd-is-inherited">
@@ -173,7 +173,7 @@ options.</p>
173
173
  <p>Implementation of IAVLTree.root</p>
174
174
  <p>Inherited from BST.root</p>
175
175
  <ul>
176
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L156">src/data-structures/binary-tree/abstract-binary-tree.ts:156</a></li></ul></aside></li></ul></section>
176
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L152">src/data-structures/binary-tree/abstract-binary-tree.ts:152</a></li></ul></aside></li></ul></section>
177
177
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="size" class="tsd-anchor"></a>
178
178
  <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>
179
179
  <ul class="tsd-signatures tsd-is-inherited">
@@ -183,7 +183,7 @@ options.</p>
183
183
  <p>Implementation of IAVLTree.size</p>
184
184
  <p>Inherited from BST.size</p>
185
185
  <ul>
186
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L162">src/data-structures/binary-tree/abstract-binary-tree.ts:162</a></li></ul></aside></li></ul></section>
186
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L158">src/data-structures/binary-tree/abstract-binary-tree.ts:158</a></li></ul></aside></li></ul></section>
187
187
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedId" class="tsd-anchor"></a>
188
188
  <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>
189
189
  <ul class="tsd-signatures tsd-is-inherited">
@@ -193,7 +193,7 @@ options.</p>
193
193
  <p>Implementation of IAVLTree.visitedId</p>
194
194
  <p>Inherited from BST.visitedId</p>
195
195
  <ul>
196
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L174">src/data-structures/binary-tree/abstract-binary-tree.ts:174</a></li></ul></aside></li></ul></section>
196
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L170">src/data-structures/binary-tree/abstract-binary-tree.ts:170</a></li></ul></aside></li></ul></section>
197
197
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedLeftSum" class="tsd-anchor"></a>
198
198
  <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>
199
199
  <ul class="tsd-signatures tsd-is-inherited">
@@ -203,7 +203,7 @@ options.</p>
203
203
  <p>Implementation of IAVLTree.visitedLeftSum</p>
204
204
  <p>Inherited from BST.visitedLeftSum</p>
205
205
  <ul>
206
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L192">src/data-structures/binary-tree/abstract-binary-tree.ts:192</a></li></ul></aside></li></ul></section>
206
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L188">src/data-structures/binary-tree/abstract-binary-tree.ts:188</a></li></ul></aside></li></ul></section>
207
207
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedNode" class="tsd-anchor"></a>
208
208
  <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>
209
209
  <ul class="tsd-signatures tsd-is-inherited">
@@ -213,7 +213,7 @@ options.</p>
213
213
  <p>Implementation of IAVLTree.visitedNode</p>
214
214
  <p>Inherited from BST.visitedNode</p>
215
215
  <ul>
216
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L186">src/data-structures/binary-tree/abstract-binary-tree.ts:186</a></li></ul></aside></li></ul></section>
216
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L182">src/data-structures/binary-tree/abstract-binary-tree.ts:182</a></li></ul></aside></li></ul></section>
217
217
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="visitedVal" class="tsd-anchor"></a>
218
218
  <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>
219
219
  <ul class="tsd-signatures tsd-is-inherited">
@@ -223,7 +223,7 @@ options.</p>
223
223
  <p>Implementation of IAVLTree.visitedVal</p>
224
224
  <p>Inherited from BST.visitedVal</p>
225
225
  <ul>
226
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L180">src/data-structures/binary-tree/abstract-binary-tree.ts:180</a></li></ul></aside></li></ul></section></section>
226
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L176">src/data-structures/binary-tree/abstract-binary-tree.ts:176</a></li></ul></aside></li></ul></section></section>
227
227
  <section class="tsd-panel-group tsd-member-group">
228
228
  <h2>Methods</h2>
229
229
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="BFS" class="tsd-anchor"></a>
@@ -231,290 +231,244 @@ options.</p>
231
231
  <ul class="tsd-signatures tsd-is-inherited">
232
232
  <li class="tsd-signature tsd-anchor-link" id="BFS.BFS-1"><span class="tsd-kind-call-signature">BFS</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="#BFS.BFS-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
233
233
  <li class="tsd-description">
234
- <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree, accumulating properties of each node based on a
235
- specified property name.</p>
234
+ <div class="tsd-comment tsd-typography"><p>Performs a breadth-first search (BFS) on a binary tree, accumulating properties of each node based on their &#39;id&#39; property.</p>
236
235
  </div>
237
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an instance of the <code>AbstractBinaryTreeNodeProperties</code> class with generic type <code>N</code>.</p>
236
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of binary tree node IDs.</p>
238
237
 
239
238
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
240
239
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
241
240
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
242
241
  <ul>
243
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L888">src/data-structures/binary-tree/abstract-binary-tree.ts:888</a></li></ul></aside></li>
242
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L925">src/data-structures/binary-tree/abstract-binary-tree.ts:925</a></li></ul></aside></li>
244
243
  <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>
245
244
  <li class="tsd-description">
246
- <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree, accumulating properties of each node based on a
247
- specified property name.</p>
245
+ <div class="tsd-comment tsd-typography"><p>Performs a breadth-first search (BFS) on a binary tree, accumulating properties of each node based on the specified property name.</p>
248
246
  </div>
249
247
  <div class="tsd-parameters">
250
248
  <h4 class="tsd-parameters-title">Parameters</h4>
251
249
  <ul class="tsd-parameter-list">
252
250
  <li>
253
251
  <h5><span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;id&quot;</span></h5>
254
- <div class="tsd-comment tsd-typography"><p>The parameter <code>nodeOrPropertyName</code> is an optional parameter that
255
- represents either a node or a property name. If a node is provided, the breadth-first search (BFS) algorithm will be
256
- performed starting from that node. If a property name is provided, the BFS algorithm will be performed starting from
257
- the</p>
252
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
258
253
  </div>
259
254
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
260
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an instance of the <code>AbstractBinaryTreeNodeProperties</code> class with generic type <code>N</code>.</p>
255
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of values corresponding to the specified property.</p>
261
256
 
262
257
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
263
258
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
264
259
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
265
260
  <ul>
266
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L890">src/data-structures/binary-tree/abstract-binary-tree.ts:890</a></li></ul></aside></li>
261
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L932">src/data-structures/binary-tree/abstract-binary-tree.ts:932</a></li></ul></aside></li>
267
262
  <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>
268
263
  <li class="tsd-description">
269
- <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree, accumulating properties of each node based on a
270
- specified property name.</p>
264
+ <div class="tsd-comment tsd-typography"><p>Performs a breadth-first search (BFS) on a binary tree, accumulating the &#39;val&#39; property of each node.</p>
271
265
  </div>
272
266
  <div class="tsd-parameters">
273
267
  <h4 class="tsd-parameters-title">Parameters</h4>
274
268
  <ul class="tsd-parameter-list">
275
269
  <li>
276
270
  <h5><span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
277
- <div class="tsd-comment tsd-typography"><p>The parameter <code>nodeOrPropertyName</code> is an optional parameter that
278
- represents either a node or a property name. If a node is provided, the breadth-first search (BFS) algorithm will be
279
- performed starting from that node. If a property name is provided, the BFS algorithm will be performed starting from
280
- the</p>
271
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
281
272
  </div>
282
273
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
283
- <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 instance of the <code>AbstractBinaryTreeNodeProperties</code> class with generic type <code>N</code>.</p>
274
+ <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 array of &#39;val&#39; properties from each node.</p>
284
275
 
285
276
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
286
277
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
287
278
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
288
279
  <ul>
289
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L892">src/data-structures/binary-tree/abstract-binary-tree.ts:892</a></li></ul></aside></li>
280
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/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>
290
281
  <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>
291
282
  <li class="tsd-description">
292
- <div class="tsd-comment tsd-typography"><p>The BFS function performs a breadth-first search on a binary tree, accumulating properties of each node based on a
293
- specified property name.</p>
283
+ <div class="tsd-comment tsd-typography"><p>Performs a breadth-first search (BFS) on a binary tree, accumulating nodes themselves.</p>
294
284
  </div>
295
285
  <div class="tsd-parameters">
296
286
  <h4 class="tsd-parameters-title">Parameters</h4>
297
287
  <ul class="tsd-parameter-list">
298
288
  <li>
299
289
  <h5><span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
300
- <div class="tsd-comment tsd-typography"><p>The parameter <code>nodeOrPropertyName</code> is an optional parameter that
301
- represents either a node or a property name. If a node is provided, the breadth-first search (BFS) algorithm will be
302
- performed starting from that node. If a property name is provided, the BFS algorithm will be performed starting from
303
- the</p>
290
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
304
291
  </div>
305
292
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
306
- <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 instance of the <code>AbstractBinaryTreeNodeProperties</code> class with generic type <code>N</code>.</p>
293
+ <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 binary tree nodes.</p>
307
294
 
308
295
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
309
296
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#BFS">BFS</a></p>
310
297
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#BFS">BFS</a></p>
311
298
  <ul>
312
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L894">src/data-structures/binary-tree/abstract-binary-tree.ts:894</a></li></ul></aside></li></ul></section>
299
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L946">src/data-structures/binary-tree/abstract-binary-tree.ts:946</a></li></ul></aside></li></ul></section>
313
300
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="DFS" class="tsd-anchor"></a>
314
301
  <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>
315
302
  <ul class="tsd-signatures tsd-is-inherited">
316
303
  <li class="tsd-signature tsd-anchor-link" id="DFS.DFS-1"><span class="tsd-kind-call-signature">DFS</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-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
317
304
  <li class="tsd-description">
318
- <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the accumulated properties of
319
- each node based on the specified pattern and property name.</p>
305
+ <div class="tsd-comment tsd-typography"><p>Performs a depth-first search (DFS) traversal on a binary tree and accumulates properties of each node based on their &#39;id&#39; property.</p>
320
306
  </div>
321
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an instance of the AbstractBinaryTreeNodeProperties class, which contains the accumulated properties of the
322
- binary tree nodes based on the specified pattern and node or property name.</p>
307
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of binary tree node IDs.</p>
323
308
 
324
309
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
325
310
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
326
311
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
327
312
  <ul>
328
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
313
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L976">src/data-structures/binary-tree/abstract-binary-tree.ts:976</a></li></ul></aside></li>
329
314
  <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>
330
315
  <li class="tsd-description">
331
- <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the accumulated properties of
332
- each node based on the specified pattern and property name.</p>
316
+ <div class="tsd-comment tsd-typography"><p>Performs a depth-first search (DFS) traversal on a binary tree and accumulates properties of each node based on the specified property name.</p>
333
317
  </div>
334
318
  <div class="tsd-parameters">
335
319
  <h4 class="tsd-parameters-title">Parameters</h4>
336
320
  <ul class="tsd-parameter-list">
337
321
  <li>
338
322
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
339
- <div class="tsd-comment tsd-typography"><p>The &quot;pattern&quot; parameter is used to specify the traversal order of the
340
- binary tree. It can have three possible values:</p>
323
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
341
324
  </div>
342
325
  <div class="tsd-comment tsd-typography"></div></li>
343
326
  <li>
344
327
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;id&quot;</span></h5>
345
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is a string that represents
346
- the name of a property of the nodes in the binary tree. This property will be used to accumulate values during the
347
- depth-first search traversal. If no <code>nodeOrPropertyName</code> is provided, the default value is <code>&#39;id&#39;</code>.</p>
328
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
348
329
  </div>
349
330
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
350
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an instance of the AbstractBinaryTreeNodeProperties class, which contains the accumulated properties of the
351
- binary tree nodes based on the specified pattern and node or property name.</p>
331
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of values corresponding to the specified property.</p>
352
332
 
353
333
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
354
334
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
355
335
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
356
336
  <ul>
357
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L924">src/data-structures/binary-tree/abstract-binary-tree.ts:924</a></li></ul></aside></li>
337
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L984">src/data-structures/binary-tree/abstract-binary-tree.ts:984</a></li></ul></aside></li>
358
338
  <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>
359
339
  <li class="tsd-description">
360
- <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the accumulated properties of
361
- each node based on the specified pattern and property name.</p>
340
+ <div class="tsd-comment tsd-typography"><p>Performs a depth-first search (DFS) traversal on a binary tree and accumulates the &#39;val&#39; property of each node.</p>
362
341
  </div>
363
342
  <div class="tsd-parameters">
364
343
  <h4 class="tsd-parameters-title">Parameters</h4>
365
344
  <ul class="tsd-parameter-list">
366
345
  <li>
367
346
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
368
- <div class="tsd-comment tsd-typography"><p>The &quot;pattern&quot; parameter is used to specify the traversal order of the
369
- binary tree. It can have three possible values:</p>
347
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
370
348
  </div>
371
349
  <div class="tsd-comment tsd-typography"></div></li>
372
350
  <li>
373
351
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
374
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is a string that represents
375
- the name of a property of the nodes in the binary tree. This property will be used to accumulate values during the
376
- depth-first search traversal. If no <code>nodeOrPropertyName</code> is provided, the default value is <code>&#39;id&#39;</code>.</p>
352
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
377
353
  </div>
378
354
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
379
- <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 instance of the AbstractBinaryTreeNodeProperties class, which contains the accumulated properties of the
380
- binary tree nodes based on the specified pattern and node or property name.</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 array of &#39;val&#39; properties from each node.</p>
381
356
 
382
357
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
383
358
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
384
359
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
385
360
  <ul>
386
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L926">src/data-structures/binary-tree/abstract-binary-tree.ts:926</a></li></ul></aside></li>
361
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L992">src/data-structures/binary-tree/abstract-binary-tree.ts:992</a></li></ul></aside></li>
387
362
  <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>
388
363
  <li class="tsd-description">
389
- <div class="tsd-comment tsd-typography"><p>The DFS function performs a depth-first search traversal on a binary tree and returns the accumulated properties of
390
- each node based on the specified pattern and property name.</p>
364
+ <div class="tsd-comment tsd-typography"><p>Performs a depth-first search (DFS) traversal on a binary tree and accumulates nodes themselves.</p>
391
365
  </div>
392
366
  <div class="tsd-parameters">
393
367
  <h4 class="tsd-parameters-title">Parameters</h4>
394
368
  <ul class="tsd-parameter-list">
395
369
  <li>
396
370
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
397
- <div class="tsd-comment tsd-typography"><p>The &quot;pattern&quot; parameter is used to specify the traversal order of the
398
- binary tree. It can have three possible values:</p>
371
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
399
372
  </div>
400
373
  <div class="tsd-comment tsd-typography"></div></li>
401
374
  <li>
402
375
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
403
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is a string that represents
404
- the name of a property of the nodes in the binary tree. This property will be used to accumulate values during the
405
- depth-first search traversal. If no <code>nodeOrPropertyName</code> is provided, the default value is <code>&#39;id&#39;</code>.</p>
376
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
406
377
  </div>
407
378
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
408
- <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 instance of the AbstractBinaryTreeNodeProperties class, which contains the accumulated properties of the
409
- binary tree nodes based on the specified pattern and node or property name.</p>
379
+ <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 binary tree nodes.</p>
410
380
 
411
381
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
412
382
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFS">DFS</a></p>
413
383
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFS">DFS</a></p>
414
384
  <ul>
415
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L928">src/data-structures/binary-tree/abstract-binary-tree.ts:928</a></li></ul></aside></li></ul></section>
385
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1000">src/data-structures/binary-tree/abstract-binary-tree.ts:1000</a></li></ul></aside></li></ul></section>
416
386
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="DFSIterative" class="tsd-anchor"></a>
417
387
  <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>
418
388
  <ul class="tsd-signatures tsd-is-inherited">
419
389
  <li class="tsd-signature tsd-anchor-link" id="DFSIterative.DFSIterative-1"><span class="tsd-kind-call-signature">DFSIterative</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-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
420
390
  <li class="tsd-description">
421
- <div class="tsd-comment tsd-typography"><p>The DFSIterative function performs an iterative depth-first search traversal on a binary tree, with the option to
422
- specify the traversal pattern and the property name to accumulate results by.</p>
391
+ <div class="tsd-comment tsd-typography"><p>Performs an iterative depth-first search (DFS) traversal on a binary tree and accumulates properties of each node based on their &#39;id&#39; property.</p>
423
392
  </div>
424
- <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 AbstractBinaryTreeNodeProperties<N>.</p>
393
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of binary tree node IDs.</p>
425
394
 
426
395
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
427
396
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
428
397
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
429
398
  <ul>
430
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
399
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1043">src/data-structures/binary-tree/abstract-binary-tree.ts:1043</a></li></ul></aside></li>
431
400
  <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>
432
401
  <li class="tsd-description">
433
- <div class="tsd-comment tsd-typography"><p>The DFSIterative function performs an iterative depth-first search traversal on a binary tree, with the option to
434
- specify the traversal pattern and the property name to accumulate results by.</p>
402
+ <div class="tsd-comment tsd-typography"><p>Performs an iterative depth-first search (DFS) traversal on a binary tree and accumulates properties of each node based on the specified property name.</p>
435
403
  </div>
436
404
  <div class="tsd-parameters">
437
405
  <h4 class="tsd-parameters-title">Parameters</h4>
438
406
  <ul class="tsd-parameter-list">
439
407
  <li>
440
408
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
441
- <div class="tsd-comment tsd-typography"><p>The &quot;pattern&quot; parameter determines the order in which the nodes of the
442
- binary tree are visited during the depth-first search. It can have one of the following values:</p>
409
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
443
410
  </div>
444
411
  <div class="tsd-comment tsd-typography"></div></li>
445
412
  <li>
446
413
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;id&quot;</span></h5>
447
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is used to specify the
448
- property of the nodes that you want to retrieve or perform operations on during the depth-first search traversal. By
449
- default, it is set to <code>&#39;id&#39;</code>, which means that the traversal will accumulate results based on the <code>id</code> property of
450
- the</p>
414
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
451
415
  </div>
452
416
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
453
- <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 AbstractBinaryTreeNodeProperties<N>.</p>
417
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of values corresponding to the specified property.</p>
454
418
 
455
419
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
456
420
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
457
421
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
458
422
  <ul>
459
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
423
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/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>
460
424
  <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>
461
425
  <li class="tsd-description">
462
- <div class="tsd-comment tsd-typography"><p>The DFSIterative function performs an iterative depth-first search traversal on a binary tree, with the option to
463
- specify the traversal pattern and the property name to accumulate results by.</p>
426
+ <div class="tsd-comment tsd-typography"><p>Performs an iterative depth-first search (DFS) traversal on a binary tree and accumulates the &#39;val&#39; property of each node.</p>
464
427
  </div>
465
428
  <div class="tsd-parameters">
466
429
  <h4 class="tsd-parameters-title">Parameters</h4>
467
430
  <ul class="tsd-parameter-list">
468
431
  <li>
469
432
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
470
- <div class="tsd-comment tsd-typography"><p>The &quot;pattern&quot; parameter determines the order in which the nodes of the
471
- binary tree are visited during the depth-first search. It can have one of the following values:</p>
433
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
472
434
  </div>
473
435
  <div class="tsd-comment tsd-typography"></div></li>
474
436
  <li>
475
437
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
476
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is used to specify the
477
- property of the nodes that you want to retrieve or perform operations on during the depth-first search traversal. By
478
- default, it is set to <code>&#39;id&#39;</code>, which means that the traversal will accumulate results based on the <code>id</code> property of
479
- the</p>
438
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
480
439
  </div>
481
440
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
482
- <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 AbstractBinaryTreeNodeProperties<N>.</p>
441
+ <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 &#39;val&#39; properties from each node.</p>
483
442
 
484
443
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
485
444
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
486
445
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
487
446
  <ul>
488
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
447
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1059">src/data-structures/binary-tree/abstract-binary-tree.ts:1059</a></li></ul></aside></li>
489
448
  <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>
490
449
  <li class="tsd-description">
491
- <div class="tsd-comment tsd-typography"><p>The DFSIterative function performs an iterative depth-first search traversal on a binary tree, with the option to
492
- specify the traversal pattern and the property name to accumulate results by.</p>
450
+ <div class="tsd-comment tsd-typography"><p>Performs an iterative depth-first search (DFS) traversal on a binary tree and accumulates nodes themselves.</p>
493
451
  </div>
494
452
  <div class="tsd-parameters">
495
453
  <h4 class="tsd-parameters-title">Parameters</h4>
496
454
  <ul class="tsd-parameter-list">
497
455
  <li>
498
456
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
499
- <div class="tsd-comment tsd-typography"><p>The &quot;pattern&quot; parameter determines the order in which the nodes of the
500
- binary tree are visited during the depth-first search. It can have one of the following values:</p>
457
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
501
458
  </div>
502
459
  <div class="tsd-comment tsd-typography"></div></li>
503
460
  <li>
504
461
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
505
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is used to specify the
506
- property of the nodes that you want to retrieve or perform operations on during the depth-first search traversal. By
507
- default, it is set to <code>&#39;id&#39;</code>, which means that the traversal will accumulate results based on the <code>id</code> property of
508
- the</p>
462
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
509
463
  </div>
510
464
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
511
- <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 AbstractBinaryTreeNodeProperties<N>.</p>
465
+ <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 binary tree nodes.</p>
512
466
 
513
467
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
514
468
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#DFSIterative">DFSIterative</a></p>
515
469
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#DFSIterative">DFSIterative</a></p>
516
470
  <ul>
517
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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></ul></section>
471
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1067">src/data-structures/binary-tree/abstract-binary-tree.ts:1067</a></li></ul></aside></li></ul></section>
518
472
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_accumulatedByPropertyName" class="tsd-anchor"></a>
519
473
  <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>
520
474
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -541,7 +495,7 @@ specifies the property name to be used for accumulating values. If it is a <code
541
495
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
542
496
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_accumulatedByPropertyName">_accumulatedByPropertyName</a></p>
543
497
  <ul>
544
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1433">src/data-structures/binary-tree/abstract-binary-tree.ts:1433</a></li></ul></aside></li></ul></section>
498
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1580">src/data-structures/binary-tree/abstract-binary-tree.ts:1580</a></li></ul></aside></li></ul></section>
545
499
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_addTo" class="tsd-anchor"></a>
546
500
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
547
501
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -571,7 +525,7 @@ undefined.</p>
571
525
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
572
526
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_addTo">_addTo</a></p>
573
527
  <ul>
574
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1287">src/data-structures/binary-tree/abstract-binary-tree.ts:1287</a></li></ul></aside></li></ul></section>
528
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1434">src/data-structures/binary-tree/abstract-binary-tree.ts:1434</a></li></ul></aside></li></ul></section>
575
529
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_balanceFactor" class="tsd-anchor"></a>
576
530
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
577
531
  <ul class="tsd-signatures tsd-is-protected">
@@ -592,7 +546,7 @@ height of its right subtree.</p>
592
546
 
593
547
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
594
548
  <ul>
595
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
549
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/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>
596
550
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_balanceLL" class="tsd-anchor"></a>
597
551
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
598
552
  <ul class="tsd-signatures tsd-is-protected">
@@ -611,7 +565,7 @@ height of its right subtree.</p>
611
565
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
612
566
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
613
567
  <ul>
614
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L155">src/data-structures/binary-tree/avl-tree.ts:155</a></li></ul></aside></li></ul></section>
568
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L155">src/data-structures/binary-tree/avl-tree.ts:155</a></li></ul></aside></li></ul></section>
615
569
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_balanceLR" class="tsd-anchor"></a>
616
570
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
617
571
  <ul class="tsd-signatures tsd-is-protected">
@@ -630,7 +584,7 @@ height of its right subtree.</p>
630
584
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
631
585
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
632
586
  <ul>
633
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L185">src/data-structures/binary-tree/avl-tree.ts:185</a></li></ul></aside></li></ul></section>
587
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L185">src/data-structures/binary-tree/avl-tree.ts:185</a></li></ul></aside></li></ul></section>
634
588
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_balancePath" class="tsd-anchor"></a>
635
589
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
636
590
  <ul class="tsd-signatures tsd-is-protected">
@@ -650,7 +604,7 @@ each node in the path from the given node to the root.</p>
650
604
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
651
605
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
652
606
  <ul>
653
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L112">src/data-structures/binary-tree/avl-tree.ts:112</a></li></ul></aside></li></ul></section>
607
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L112">src/data-structures/binary-tree/avl-tree.ts:112</a></li></ul></aside></li></ul></section>
654
608
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_balanceRL" class="tsd-anchor"></a>
655
609
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
656
610
  <ul class="tsd-signatures tsd-is-protected">
@@ -669,7 +623,7 @@ each node in the path from the given node to the root.</p>
669
623
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
670
624
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
671
625
  <ul>
672
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L268">src/data-structures/binary-tree/avl-tree.ts:268</a></li></ul></aside></li></ul></section>
626
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L268">src/data-structures/binary-tree/avl-tree.ts:268</a></li></ul></aside></li></ul></section>
673
627
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_balanceRR" class="tsd-anchor"></a>
674
628
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
675
629
  <ul class="tsd-signatures tsd-is-protected">
@@ -688,7 +642,7 @@ each node in the path from the given node to the root.</p>
688
642
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
689
643
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
690
644
  <ul>
691
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L233">src/data-structures/binary-tree/avl-tree.ts:233</a></li></ul></aside></li></ul></section>
645
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L233">src/data-structures/binary-tree/avl-tree.ts:233</a></li></ul></aside></li></ul></section>
692
646
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_clearResults" class="tsd-anchor"></a>
693
647
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_clear<wbr/>Results</span><a href="#_clearResults" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
694
648
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -701,7 +655,7 @@ properties.</p>
701
655
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
702
656
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_clearResults">_clearResults</a></p>
703
657
  <ul>
704
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
658
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1522">src/data-structures/binary-tree/abstract-binary-tree.ts:1522</a></li></ul></aside></li></ul></section>
705
659
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_compare" class="tsd-anchor"></a>
706
660
  <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>
707
661
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -729,7 +683,7 @@ than), or CP.eq (equal).</p>
729
683
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
730
684
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_compare">_compare</a></p>
731
685
  <ul>
732
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L535">src/data-structures/binary-tree/bst.ts:535</a></li></ul></aside></li></ul></section>
686
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L535">src/data-structures/binary-tree/bst.ts:535</a></li></ul></aside></li></ul></section>
733
687
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_getResultByPropertyName" class="tsd-anchor"></a>
734
688
  <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>
735
689
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -752,7 +706,7 @@ can accept either a <code>NodeOrPropertyName</code> type or be undefined.</p>
752
706
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
753
707
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_getResultByPropertyName">_getResultByPropertyName</a></p>
754
708
  <ul>
755
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1464">src/data-structures/binary-tree/abstract-binary-tree.ts:1464</a></li></ul></aside></li></ul></section>
709
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1611">src/data-structures/binary-tree/abstract-binary-tree.ts:1611</a></li></ul></aside></li></ul></section>
756
710
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_pushByPropertyNameStopOrNot" class="tsd-anchor"></a>
757
711
  <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>
758
712
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -799,7 +753,7 @@ stop after finding the first matching node or continue searching for all matchin
799
753
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
800
754
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_pushByPropertyNameStopOrNot">_pushByPropertyNameStopOrNot</a></p>
801
755
  <ul>
802
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
756
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1544">src/data-structures/binary-tree/abstract-binary-tree.ts:1544</a></li></ul></aside></li></ul></section>
803
757
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setLoopType" class="tsd-anchor"></a>
804
758
  <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>
805
759
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -819,7 +773,7 @@ stop after finding the first matching node or continue searching for all matchin
819
773
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
820
774
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setLoopType">_setLoopType</a></p>
821
775
  <ul>
822
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1315">src/data-structures/binary-tree/abstract-binary-tree.ts:1315</a></li></ul></aside></li></ul></section>
776
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1462">src/data-structures/binary-tree/abstract-binary-tree.ts:1462</a></li></ul></aside></li></ul></section>
823
777
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setRoot" class="tsd-anchor"></a>
824
778
  <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>
825
779
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -840,7 +794,7 @@ parent property of the value to undefined.</p>
840
794
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
841
795
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setRoot">_setRoot</a></p>
842
796
  <ul>
843
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1356">src/data-structures/binary-tree/abstract-binary-tree.ts:1356</a></li></ul></aside></li></ul></section>
797
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1503">src/data-structures/binary-tree/abstract-binary-tree.ts:1503</a></li></ul></aside></li></ul></section>
844
798
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setSize" class="tsd-anchor"></a>
845
799
  <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>
846
800
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -860,7 +814,7 @@ parent property of the value to undefined.</p>
860
814
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
861
815
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setSize">_setSize</a></p>
862
816
  <ul>
863
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1367">src/data-structures/binary-tree/abstract-binary-tree.ts:1367</a></li></ul></aside></li></ul></section>
817
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1514">src/data-structures/binary-tree/abstract-binary-tree.ts:1514</a></li></ul></aside></li></ul></section>
864
818
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVisitedId" class="tsd-anchor"></a>
865
819
  <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>
866
820
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -880,7 +834,7 @@ parent property of the value to undefined.</p>
880
834
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
881
835
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setVisitedId">_setVisitedId</a></p>
882
836
  <ul>
883
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1323">src/data-structures/binary-tree/abstract-binary-tree.ts:1323</a></li></ul></aside></li></ul></section>
837
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1470">src/data-structures/binary-tree/abstract-binary-tree.ts:1470</a></li></ul></aside></li></ul></section>
884
838
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVisitedLeftSum" class="tsd-anchor"></a>
885
839
  <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>
886
840
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -900,7 +854,7 @@ parent property of the value to undefined.</p>
900
854
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
901
855
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setVisitedLeftSum">_setVisitedLeftSum</a></p>
902
856
  <ul>
903
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
857
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1494">src/data-structures/binary-tree/abstract-binary-tree.ts:1494</a></li></ul></aside></li></ul></section>
904
858
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVisitedNode" class="tsd-anchor"></a>
905
859
  <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>
906
860
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -920,7 +874,7 @@ parent property of the value to undefined.</p>
920
874
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
921
875
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setVisitedNode">_setVisitedNode</a></p>
922
876
  <ul>
923
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
877
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1486">src/data-structures/binary-tree/abstract-binary-tree.ts:1486</a></li></ul></aside></li></ul></section>
924
878
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVisitedVal" class="tsd-anchor"></a>
925
879
  <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>
926
880
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -940,7 +894,7 @@ parent property of the value to undefined.</p>
940
894
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
941
895
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#_setVisitedVal">_setVisitedVal</a></p>
942
896
  <ul>
943
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
897
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1478">src/data-structures/binary-tree/abstract-binary-tree.ts:1478</a></li></ul></aside></li></ul></section>
944
898
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_updateHeight" class="tsd-anchor"></a>
945
899
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
946
900
  <ul class="tsd-signatures tsd-is-protected">
@@ -959,7 +913,7 @@ parent property of the value to undefined.</p>
959
913
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
960
914
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
961
915
  <ul>
962
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L98">src/data-structures/binary-tree/avl-tree.ts:98</a></li></ul></aside></li></ul></section>
916
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L98">src/data-structures/binary-tree/avl-tree.ts:98</a></li></ul></aside></li></ul></section>
963
917
  <section class="tsd-panel tsd-member"><a id="add" class="tsd-anchor"></a>
964
918
  <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>
965
919
  <ul class="tsd-signatures">
@@ -987,7 +941,7 @@ parent property of the value to undefined.</p>
987
941
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#add">add</a></p>
988
942
  <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#add">add</a></p>
989
943
  <ul>
990
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L51">src/data-structures/binary-tree/avl-tree.ts:51</a></li></ul></aside></li></ul></section>
944
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L51">src/data-structures/binary-tree/avl-tree.ts:51</a></li></ul></aside></li></ul></section>
991
945
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="addMany" class="tsd-anchor"></a>
992
946
  <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>
993
947
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1022,7 +976,7 @@ to the binary search tree.</p>
1022
976
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#addMany">addMany</a></p>
1023
977
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#addMany">addMany</a></p>
1024
978
  <ul>
1025
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L140">src/data-structures/binary-tree/bst.ts:140</a></li></ul></aside></li></ul></section>
979
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L140">src/data-structures/binary-tree/bst.ts:140</a></li></ul></aside></li></ul></section>
1026
980
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="allGreaterNodesAdd" class="tsd-anchor"></a>
1027
981
  <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>
1028
982
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1059,7 +1013,7 @@ specifies the property name of the nodes in the binary tree that you want to upd
1059
1013
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#allGreaterNodesAdd">allGreaterNodesAdd</a></p>
1060
1014
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#allGreaterNodesAdd">allGreaterNodesAdd</a></p>
1061
1015
  <ul>
1062
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L376">src/data-structures/binary-tree/bst.ts:376</a></li></ul></aside></li></ul></section>
1016
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L376">src/data-structures/binary-tree/bst.ts:376</a></li></ul></aside></li></ul></section>
1063
1017
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="clear" class="tsd-anchor"></a>
1064
1018
  <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>
1065
1019
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1072,7 +1026,7 @@ specifies the property name of the nodes in the binary tree that you want to upd
1072
1026
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#clear">clear</a></p>
1073
1027
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#clear">clear</a></p>
1074
1028
  <ul>
1075
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L227">src/data-structures/binary-tree/abstract-binary-tree.ts:227</a></li></ul></aside></li></ul></section>
1029
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L223">src/data-structures/binary-tree/abstract-binary-tree.ts:223</a></li></ul></aside></li></ul></section>
1076
1030
  <section class="tsd-panel tsd-member"><a id="createNode" class="tsd-anchor"></a>
1077
1031
  <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>
1078
1032
  <ul class="tsd-signatures">
@@ -1101,7 +1055,7 @@ that will be stored in the node.</p>
1101
1055
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#createNode">createNode</a></p>
1102
1056
  <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#createNode">createNode</a></p>
1103
1057
  <ul>
1104
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L40">src/data-structures/binary-tree/avl-tree.ts:40</a></li></ul></aside></li></ul></section>
1058
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L40">src/data-structures/binary-tree/avl-tree.ts:40</a></li></ul></aside></li></ul></section>
1105
1059
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="fill" class="tsd-anchor"></a>
1106
1060
  <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>
1107
1061
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1131,7 +1085,7 @@ array. Each value in the <code>data</code> array will be assigned to the</p>
1131
1085
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#fill">fill</a></p>
1132
1086
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#fill">fill</a></p>
1133
1087
  <ul>
1134
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L345">src/data-structures/binary-tree/abstract-binary-tree.ts:345</a></li></ul></aside></li></ul></section>
1088
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L341">src/data-structures/binary-tree/abstract-binary-tree.ts:341</a></li></ul></aside></li></ul></section>
1135
1089
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="get" class="tsd-anchor"></a>
1136
1090
  <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>
1137
1091
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1160,7 +1114,7 @@ specifies the property name to use for searching the binary tree nodes. If not p
1160
1114
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#get">get</a></p>
1161
1115
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#get">get</a></p>
1162
1116
  <ul>
1163
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L217">src/data-structures/binary-tree/bst.ts:217</a></li></ul></aside></li></ul></section>
1117
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L217">src/data-structures/binary-tree/bst.ts:217</a></li></ul></aside></li></ul></section>
1164
1118
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getDepth" class="tsd-anchor"></a>
1165
1119
  <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>
1166
1120
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1182,7 +1136,7 @@ specifies the property name to use for searching the binary tree nodes. If not p
1182
1136
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getDepth">getDepth</a></p>
1183
1137
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getDepth">getDepth</a></p>
1184
1138
  <ul>
1185
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L412">src/data-structures/binary-tree/abstract-binary-tree.ts:412</a></li></ul></aside></li></ul></section>
1139
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L408">src/data-structures/binary-tree/abstract-binary-tree.ts:408</a></li></ul></aside></li></ul></section>
1186
1140
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getHeight" class="tsd-anchor"></a>
1187
1141
  <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>
1188
1142
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1206,43 +1160,52 @@ node), or <code>null</code>.</p>
1206
1160
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getHeight">getHeight</a></p>
1207
1161
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getHeight">getHeight</a></p>
1208
1162
  <ul>
1209
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L430">src/data-structures/binary-tree/abstract-binary-tree.ts:430</a></li></ul></aside></li></ul></section>
1163
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L426">src/data-structures/binary-tree/abstract-binary-tree.ts:426</a></li></ul></aside></li></ul></section>
1210
1164
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getLeftMost" class="tsd-anchor"></a>
1211
1165
  <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>
1212
1166
  <ul class="tsd-signatures tsd-is-inherited">
1213
1167
  <li class="tsd-signature tsd-anchor-link" id="getLeftMost.getLeftMost-1"><span class="tsd-kind-call-signature">get<wbr/>Left<wbr/>Most</span><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><a href="#getLeftMost.getLeftMost-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1214
1168
  <li class="tsd-description">
1215
- <div class="tsd-comment tsd-typography"><p>The <code>getLeftMost</code> function returns the leftmost node in a binary tree, starting from a specified node or the root if
1216
- no node is specified.</p>
1169
+ <div class="tsd-comment tsd-typography"><p>The function <code>getLeftMost</code> returns the leftmost node in a binary tree, starting from a specified node or the root if
1170
+ no node is specified.
1171
+ generic type representing a node in a binary tree), <code>BinaryTreeNodeId</code> (a type representing the ID of a binary tree
1172
+ node), or <code>null</code>.</p>
1217
1173
  </div>
1218
1174
  <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 function <code>getLeftMost</code> returns the leftmost node in a binary tree. If the <code>beginRoot</code> parameter is
1219
- provided, it starts the traversal from that node. If <code>beginRoot</code> is not provided or is <code>null</code>, it starts the
1220
- traversal from the root of the binary tree. If there are no nodes in the binary tree, it returns <code>null</code>.</p>
1175
+ provided, it starts the traversal from that node. If <code>beginRoot</code> is not provided or is <code>null</code>, it starts the traversal
1176
+ from the root of the binary tree. The function returns the leftmost node found during the traversal. If no leftmost
1177
+ node is found (</p>
1221
1178
 
1222
1179
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1223
1180
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getLeftMost">getLeftMost</a></p>
1224
1181
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getLeftMost">getLeftMost</a></p>
1225
1182
  <ul>
1226
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L628">src/data-structures/binary-tree/abstract-binary-tree.ts:628</a></li></ul></aside></li>
1227
- <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>
1183
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L634">src/data-structures/binary-tree/abstract-binary-tree.ts:634</a></li></ul></aside></li>
1184
+ <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-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>
1228
1185
  <li class="tsd-description">
1229
- <div class="tsd-comment tsd-typography"><p>The <code>getLeftMost</code> function returns the leftmost node in a binary tree, starting from a specified node or the root if
1186
+ <div class="tsd-comment tsd-typography"><p>The function <code>getLeftMost</code> returns the leftmost node in a binary tree, starting from a specified node or the root if
1230
1187
  no node is specified.</p>
1231
1188
  </div>
1232
1189
  <div class="tsd-parameters">
1233
1190
  <h4 class="tsd-parameters-title">Parameters</h4>
1234
1191
  <ul class="tsd-parameter-list">
1235
1192
  <li>
1236
- <h5><span class="tsd-kind-parameter">node</span>: <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h5></li></ul></div>
1193
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">node</span>: <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h5>
1194
+ <div class="tsd-comment tsd-typography"><p>The <code>beginRoot</code> parameter is optional and can be of type <code>N</code> (a
1195
+ generic type representing a node in a binary tree), <code>BinaryTreeNodeId</code> (a type representing the ID of a binary tree
1196
+ node).</p>
1197
+ </div>
1198
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
1237
1199
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The function <code>getLeftMost</code> returns the leftmost node in a binary tree. If the <code>beginRoot</code> parameter is
1238
- provided, it starts the traversal from that node. If <code>beginRoot</code> is not provided or is <code>null</code>, it starts the
1239
- traversal from the root of the binary tree. If there are no nodes in the binary tree, it returns <code>null</code>.</p>
1200
+ provided, it starts the traversal from that node. If <code>beginRoot</code> is not provided or is <code>null</code>, it starts the traversal
1201
+ from the root of the binary tree. The function returns the leftmost node found during the traversal. If no leftmost
1202
+ node is found (</p>
1240
1203
 
1241
1204
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1242
1205
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getLeftMost">getLeftMost</a></p>
1243
1206
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getLeftMost">getLeftMost</a></p>
1244
1207
  <ul>
1245
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L630">src/data-structures/binary-tree/abstract-binary-tree.ts:630</a></li></ul></aside></li></ul></section>
1208
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L647">src/data-structures/binary-tree/abstract-binary-tree.ts:647</a></li></ul></aside></li></ul></section>
1246
1209
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getMinHeight" class="tsd-anchor"></a>
1247
1210
  <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>
1248
1211
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1267,7 +1230,7 @@ for <code>beginRoot</code>, the <code>this.root</code> property is used as the d
1267
1230
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getMinHeight">getMinHeight</a></p>
1268
1231
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getMinHeight">getMinHeight</a></p>
1269
1232
  <ul>
1270
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L479">src/data-structures/binary-tree/abstract-binary-tree.ts:479</a></li></ul></aside></li></ul></section>
1233
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L475">src/data-structures/binary-tree/abstract-binary-tree.ts:475</a></li></ul></aside></li></ul></section>
1271
1234
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getNodes" class="tsd-anchor"></a>
1272
1235
  <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>
1273
1236
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1303,7 +1266,7 @@ is set to <code>true</code>, the function will return an array with only one nod
1303
1266
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getNodes">getNodes</a></p>
1304
1267
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getNodes">getNodes</a></p>
1305
1268
  <ul>
1306
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L246">src/data-structures/binary-tree/bst.ts:246</a></li></ul></aside></li></ul></section>
1269
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L246">src/data-structures/binary-tree/bst.ts:246</a></li></ul></aside></li></ul></section>
1307
1270
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getPathToRoot" class="tsd-anchor"></a>
1308
1271
  <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>
1309
1272
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1334,7 +1297,7 @@ path should be reversed or not. If <code>isReverse</code> is set to <code>true</
1334
1297
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getPathToRoot">getPathToRoot</a></p>
1335
1298
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getPathToRoot">getPathToRoot</a></p>
1336
1299
  <ul>
1337
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L615">src/data-structures/binary-tree/abstract-binary-tree.ts:615</a></li></ul></aside></li></ul></section>
1300
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L611">src/data-structures/binary-tree/abstract-binary-tree.ts:611</a></li></ul></aside></li></ul></section>
1338
1301
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getPredecessor" class="tsd-anchor"></a>
1339
1302
  <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>
1340
1303
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1356,48 +1319,46 @@ path should be reversed or not. If <code>isReverse</code> is set to <code>true</
1356
1319
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getPredecessor">getPredecessor</a></p>
1357
1320
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getPredecessor">getPredecessor</a></p>
1358
1321
  <ul>
1359
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1151">src/data-structures/binary-tree/abstract-binary-tree.ts:1151</a></li></ul></aside></li></ul></section>
1322
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1280">src/data-structures/binary-tree/abstract-binary-tree.ts:1280</a></li></ul></aside></li></ul></section>
1360
1323
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getRightMost" class="tsd-anchor"></a>
1361
1324
  <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>
1362
1325
  <ul class="tsd-signatures tsd-is-inherited">
1363
1326
  <li class="tsd-signature tsd-anchor-link" id="getRightMost.getRightMost-1"><span class="tsd-kind-call-signature">get<wbr/>Right<wbr/>Most</span><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><a href="#getRightMost.getRightMost-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1364
1327
  <li class="tsd-description">
1365
- <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
1366
- tail recursion optimization.</p>
1328
+ <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 tail
1329
+ recursion optimization.</p>
1367
1330
  </div>
1368
- <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 function <code>getRightMost</code> returns the rightmost node (<code>N</code>) in a binary tree. If the <code>node</code> parameter is
1369
- not provided, it defaults to the root node of the tree. If the tree is empty or the <code>node</code> parameter is <code>null</code>, the
1370
- function returns <code>null</code>.</p>
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>getRightMost</code> function returns the rightmost node in a binary tree. It returns the
1332
+ rightmost node starting from the root of the binary tree.</p>
1371
1333
 
1372
1334
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1373
1335
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getRightMost">getRightMost</a></p>
1374
1336
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getRightMost">getRightMost</a></p>
1375
1337
  <ul>
1376
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L666">src/data-structures/binary-tree/abstract-binary-tree.ts:666</a></li></ul></aside></li>
1377
- <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>
1338
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L690">src/data-structures/binary-tree/abstract-binary-tree.ts:690</a></li></ul></aside></li>
1339
+ <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-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>
1378
1340
  <li class="tsd-description">
1379
- <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
1380
- tail recursion optimization.</p>
1341
+ <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 tail
1342
+ recursion optimization.</p>
1381
1343
  </div>
1382
1344
  <div class="tsd-parameters">
1383
1345
  <h4 class="tsd-parameters-title">Parameters</h4>
1384
1346
  <ul class="tsd-parameter-list">
1385
1347
  <li>
1386
- <h5><span class="tsd-kind-parameter">node</span>: <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h5>
1348
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">node</span>: <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h5>
1387
1349
  <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is an optional parameter of type <code>N</code> or <code>null</code>. It represents the
1388
- starting node from which we want to find the rightmost node. If no node is provided, the <code>node</code> parameter defaults
1389
- to <code>this.root</code>, which is the root node of the data structure</p>
1350
+ starting node from which we want to find the rightmost node. If no node is provided, the function will default to
1351
+ using the root node of the data structure.</p>
1390
1352
  </div>
1391
1353
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1392
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span></h4><p>The function <code>getRightMost</code> returns the rightmost node (<code>N</code>) in a binary tree. If the <code>node</code> parameter is
1393
- not provided, it defaults to the root node of the tree. If the tree is empty or the <code>node</code> parameter is <code>null</code>, the
1394
- function returns <code>null</code>.</p>
1354
+ <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. It returns the rightmost node
1355
+ starting from that node.</p>
1395
1356
 
1396
1357
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1397
1358
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getRightMost">getRightMost</a></p>
1398
1359
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getRightMost">getRightMost</a></p>
1399
1360
  <ul>
1400
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
1361
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L701">src/data-structures/binary-tree/abstract-binary-tree.ts:701</a></li></ul></aside></li></ul></section>
1401
1362
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getSubTreeSize" class="tsd-anchor"></a>
1402
1363
  <h3 class="tsd-anchor-link"><span>get<wbr/>Sub<wbr/>Tree<wbr/>Size</span><a href="#getSubTreeSize" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1403
1364
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1420,7 +1381,7 @@ binary tree.</p>
1420
1381
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#getSubTreeSize">getSubTreeSize</a></p>
1421
1382
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#getSubTreeSize">getSubTreeSize</a></p>
1422
1383
  <ul>
1423
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L752">src/data-structures/binary-tree/abstract-binary-tree.ts:752</a></li></ul></aside></li></ul></section>
1384
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L785">src/data-structures/binary-tree/abstract-binary-tree.ts:785</a></li></ul></aside></li></ul></section>
1424
1385
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="has" class="tsd-anchor"></a>
1425
1386
  <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>
1426
1387
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1449,7 +1410,7 @@ specifies the name of the property to be checked in the nodes. If not provided,
1449
1410
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#has">has</a></p>
1450
1411
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#has">has</a></p>
1451
1412
  <ul>
1452
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L582">src/data-structures/binary-tree/abstract-binary-tree.ts:582</a></li></ul></aside></li></ul></section>
1413
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L578">src/data-structures/binary-tree/abstract-binary-tree.ts:578</a></li></ul></aside></li></ul></section>
1453
1414
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isAVLBalanced" class="tsd-anchor"></a>
1454
1415
  <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>
1455
1416
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1463,7 +1424,7 @@ specifies the name of the property to be checked in the nodes. If not provided,
1463
1424
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isAVLBalanced">isAVLBalanced</a></p>
1464
1425
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isAVLBalanced">isAVLBalanced</a></p>
1465
1426
  <ul>
1466
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L481">src/data-structures/binary-tree/bst.ts:481</a></li></ul></aside></li></ul></section>
1427
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L481">src/data-structures/binary-tree/bst.ts:481</a></li></ul></aside></li></ul></section>
1467
1428
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isBST" class="tsd-anchor"></a>
1468
1429
  <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>
1469
1430
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1477,7 +1438,7 @@ specifies the name of the property to be checked in the nodes. If not provided,
1477
1438
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isBST">isBST</a></p>
1478
1439
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isBST">isBST</a></p>
1479
1440
  <ul>
1480
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L742">src/data-structures/binary-tree/abstract-binary-tree.ts:742</a></li></ul></aside></li></ul></section>
1441
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L775">src/data-structures/binary-tree/abstract-binary-tree.ts:775</a></li></ul></aside></li></ul></section>
1481
1442
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isEmpty" class="tsd-anchor"></a>
1482
1443
  <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>
1483
1444
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1491,7 +1452,7 @@ specifies the name of the property to be checked in the nodes. If not provided,
1491
1452
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isEmpty">isEmpty</a></p>
1492
1453
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isEmpty">isEmpty</a></p>
1493
1454
  <ul>
1494
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/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>
1455
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L233">src/data-structures/binary-tree/abstract-binary-tree.ts:233</a></li></ul></aside></li></ul></section>
1495
1456
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isPerfectlyBalanced" class="tsd-anchor"></a>
1496
1457
  <h3 class="tsd-anchor-link"><span>is<wbr/>Perfectly<wbr/>Balanced</span><a href="#isPerfectlyBalanced" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1497
1458
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1515,7 +1476,7 @@ tree or null if the tree is empty.</p>
1515
1476
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isPerfectlyBalanced">isPerfectlyBalanced</a></p>
1516
1477
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isPerfectlyBalanced">isPerfectlyBalanced</a></p>
1517
1478
  <ul>
1518
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L529">src/data-structures/binary-tree/abstract-binary-tree.ts:529</a></li></ul></aside></li></ul></section>
1479
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L525">src/data-structures/binary-tree/abstract-binary-tree.ts:525</a></li></ul></aside></li></ul></section>
1519
1480
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="isSubtreeBST" class="tsd-anchor"></a>
1520
1481
  <h3 class="tsd-anchor-link"><span>is<wbr/>SubtreeBST</span><a href="#isSubtreeBST" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1521
1482
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1537,7 +1498,7 @@ tree or null if the tree is empty.</p>
1537
1498
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#isSubtreeBST">isSubtreeBST</a></p>
1538
1499
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#isSubtreeBST">isSubtreeBST</a></p>
1539
1500
  <ul>
1540
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L708">src/data-structures/binary-tree/abstract-binary-tree.ts:708</a></li></ul></aside></li></ul></section>
1501
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L741">src/data-structures/binary-tree/abstract-binary-tree.ts:741</a></li></ul></aside></li></ul></section>
1541
1502
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="lastKey" class="tsd-anchor"></a>
1542
1503
  <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>
1543
1504
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1554,7 +1515,7 @@ equal, it returns the id of the rightmost node. If there are no nodes in the tre
1554
1515
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#lastKey">lastKey</a></p>
1555
1516
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#lastKey">lastKey</a></p>
1556
1517
  <ul>
1557
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L229">src/data-structures/binary-tree/bst.ts:229</a></li></ul></aside></li></ul></section>
1518
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L229">src/data-structures/binary-tree/bst.ts:229</a></li></ul></aside></li></ul></section>
1558
1519
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="lesserSum" class="tsd-anchor"></a>
1559
1520
  <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>
1560
1521
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1584,315 +1545,277 @@ binary tree that have a lesser value than the specified <code>beginNode</code> b
1584
1545
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#lesserSum">lesserSum</a></p>
1585
1546
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#lesserSum">lesserSum</a></p>
1586
1547
  <ul>
1587
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L299">src/data-structures/binary-tree/bst.ts:299</a></li></ul></aside></li></ul></section>
1548
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L299">src/data-structures/binary-tree/bst.ts:299</a></li></ul></aside></li></ul></section>
1588
1549
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="levelIterative" class="tsd-anchor"></a>
1589
1550
  <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>
1590
1551
  <ul class="tsd-signatures tsd-is-inherited">
1591
1552
  <li class="tsd-signature tsd-anchor-link" id="levelIterative.levelIterative-1"><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-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-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1592
1553
  <li class="tsd-description">
1593
- <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
1594
- in an array, based on a specified property name.</p>
1554
+ <div class="tsd-comment tsd-typography"><p>Performs a level-order traversal on a binary tree starting from the specified node and accumulates properties of each node based on their &#39;id&#39; property.</p>
1595
1555
  </div>
1596
1556
  <div class="tsd-parameters">
1597
1557
  <h4 class="tsd-parameters-title">Parameters</h4>
1598
1558
  <ul class="tsd-parameter-list">
1599
1559
  <li>
1600
1560
  <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>
1601
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is a BinaryTreeNode object representing the starting
1602
- node for the level order traversal. It can be null if no specific node is provided, in which case the root node of
1603
- the tree is used as the starting node.</p>
1561
+ <div class="tsd-comment tsd-typography"><p>The starting node for the level order traversal. If null, the root node of the tree is used as the starting node.</p>
1604
1562
  </div>
1605
1563
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1606
- <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>
1564
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of binary tree node IDs.</p>
1607
1565
 
1608
1566
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1609
1567
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1610
1568
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1611
1569
  <ul>
1612
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1035">src/data-structures/binary-tree/abstract-binary-tree.ts:1035</a></li></ul></aside></li>
1570
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1126">src/data-structures/binary-tree/abstract-binary-tree.ts:1126</a></li></ul></aside></li>
1613
1571
  <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>
1614
1572
  <li class="tsd-description">
1615
- <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
1616
- in an array, based on a specified property name.</p>
1573
+ <div class="tsd-comment tsd-typography"><p>Performs a level-order traversal on a binary tree starting from the specified node and accumulates properties of each node based on the specified property name.</p>
1617
1574
  </div>
1618
1575
  <div class="tsd-parameters">
1619
1576
  <h4 class="tsd-parameters-title">Parameters</h4>
1620
1577
  <ul class="tsd-parameter-list">
1621
1578
  <li>
1622
1579
  <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>
1623
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is a BinaryTreeNode object representing the starting
1624
- node for the level order traversal. It can be null if no specific node is provided, in which case the root node of
1625
- the tree is used as the starting node.</p>
1580
+ <div class="tsd-comment tsd-typography"><p>The starting node for the level order traversal. If null, the root node of the tree is used as the starting node.</p>
1626
1581
  </div>
1627
1582
  <div class="tsd-comment tsd-typography"></div></li>
1628
1583
  <li>
1629
1584
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;id&quot;</span></h5>
1630
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is an optional parameter that
1631
- can be either a <code>BinaryTreeNode</code> property name or the string <code>&#39;id&#39;</code>. If a property name is provided, the function
1632
- will accumulate results based on that property. If no property name is provided, the function will default to
1633
- accumulating results</p>
1585
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
1634
1586
  </div>
1635
1587
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1636
- <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>
1588
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of values corresponding to the specified property.</p>
1637
1589
 
1638
1590
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1639
1591
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1640
1592
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1641
1593
  <ul>
1642
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1037">src/data-structures/binary-tree/abstract-binary-tree.ts:1037</a></li></ul></aside></li>
1594
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/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>
1643
1595
  <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>
1644
1596
  <li class="tsd-description">
1645
- <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
1646
- in an array, based on a specified property name.</p>
1597
+ <div class="tsd-comment tsd-typography"><p>Performs a level-order traversal on a binary tree starting from the specified node and accumulates the &#39;val&#39; property of each node.</p>
1647
1598
  </div>
1648
1599
  <div class="tsd-parameters">
1649
1600
  <h4 class="tsd-parameters-title">Parameters</h4>
1650
1601
  <ul class="tsd-parameter-list">
1651
1602
  <li>
1652
1603
  <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>
1653
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is a BinaryTreeNode object representing the starting
1654
- node for the level order traversal. It can be null if no specific node is provided, in which case the root node of
1655
- the tree is used as the starting node.</p>
1604
+ <div class="tsd-comment tsd-typography"><p>The starting node for the level order traversal. If null, the root node of the tree is used as the starting node.</p>
1656
1605
  </div>
1657
1606
  <div class="tsd-comment tsd-typography"></div></li>
1658
1607
  <li>
1659
1608
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
1660
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is an optional parameter that
1661
- can be either a <code>BinaryTreeNode</code> property name or the string <code>&#39;id&#39;</code>. If a property name is provided, the function
1662
- will accumulate results based on that property. If no property name is provided, the function will default to
1663
- accumulating results</p>
1609
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
1664
1610
  </div>
1665
1611
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1666
- <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>
1612
+ <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 array of &#39;val&#39; properties from each node.</p>
1667
1613
 
1668
1614
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1669
1615
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1670
1616
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1671
1617
  <ul>
1672
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1039">src/data-structures/binary-tree/abstract-binary-tree.ts:1039</a></li></ul></aside></li>
1618
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1142">src/data-structures/binary-tree/abstract-binary-tree.ts:1142</a></li></ul></aside></li>
1673
1619
  <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>
1674
1620
  <li class="tsd-description">
1675
- <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
1676
- in an array, based on a specified property name.</p>
1621
+ <div class="tsd-comment tsd-typography"><p>Performs a level-order traversal on a binary tree starting from the specified node and accumulates nodes themselves.</p>
1677
1622
  </div>
1678
1623
  <div class="tsd-parameters">
1679
1624
  <h4 class="tsd-parameters-title">Parameters</h4>
1680
1625
  <ul class="tsd-parameter-list">
1681
1626
  <li>
1682
1627
  <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>
1683
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is a BinaryTreeNode object representing the starting
1684
- node for the level order traversal. It can be null if no specific node is provided, in which case the root node of
1685
- the tree is used as the starting node.</p>
1628
+ <div class="tsd-comment tsd-typography"><p>The starting node for the level order traversal. If null, the root node of the tree is used as the starting node.</p>
1686
1629
  </div>
1687
1630
  <div class="tsd-comment tsd-typography"></div></li>
1688
1631
  <li>
1689
1632
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
1690
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is an optional parameter that
1691
- can be either a <code>BinaryTreeNode</code> property name or the string <code>&#39;id&#39;</code>. If a property name is provided, the function
1692
- will accumulate results based on that property. If no property name is provided, the function will default to
1693
- accumulating results</p>
1633
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
1694
1634
  </div>
1695
1635
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1696
- <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>
1636
+ <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 binary tree nodes.</p>
1697
1637
 
1698
1638
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1699
1639
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#levelIterative">levelIterative</a></p>
1700
1640
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#levelIterative">levelIterative</a></p>
1701
1641
  <ul>
1702
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1041">src/data-structures/binary-tree/abstract-binary-tree.ts:1041</a></li></ul></aside></li></ul></section>
1642
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1150">src/data-structures/binary-tree/abstract-binary-tree.ts:1150</a></li></ul></aside></li></ul></section>
1703
1643
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="listLevels" class="tsd-anchor"></a>
1704
1644
  <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>
1705
1645
  <ul class="tsd-signatures tsd-is-inherited">
1706
1646
  <li class="tsd-signature tsd-anchor-link" id="listLevels.listLevels-1"><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-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-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1707
1647
  <li class="tsd-description">
1708
- <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>
1648
+ <div class="tsd-comment tsd-typography"><p>Collects nodes from a binary tree by a specified property and organizes them into levels.</p>
1709
1649
  </div>
1710
1650
  <div class="tsd-parameters">
1711
1651
  <h4 class="tsd-parameters-title">Parameters</h4>
1712
1652
  <ul class="tsd-parameter-list">
1713
1653
  <li>
1714
1654
  <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>
1715
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is a BinaryTreeNode object or null. It represents the
1716
- root node of a binary tree. If it is null, the function will use the root node of the current binary tree instance.</p>
1655
+ <div class="tsd-comment tsd-typography"><p>The root node of the binary tree or null. If null, the function will use the root node of the current binary tree instance.</p>
1717
1656
  </div>
1718
1657
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1719
- <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>
1658
+ <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>A 2D array of AbstractBinaryTreeNodeProperty<N> objects.</p>
1720
1659
 
1721
1660
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1722
1661
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1723
1662
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1724
1663
  <ul>
1725
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1079">src/data-structures/binary-tree/abstract-binary-tree.ts:1079</a></li></ul></aside></li>
1664
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1193">src/data-structures/binary-tree/abstract-binary-tree.ts:1193</a></li></ul></aside></li>
1726
1665
  <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>
1727
1666
  <li class="tsd-description">
1728
- <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>
1667
+ <div class="tsd-comment tsd-typography"><p>Collects nodes from a binary tree by a specified property and organizes them into levels.</p>
1729
1668
  </div>
1730
1669
  <div class="tsd-parameters">
1731
1670
  <h4 class="tsd-parameters-title">Parameters</h4>
1732
1671
  <ul class="tsd-parameter-list">
1733
1672
  <li>
1734
1673
  <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>
1735
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is a BinaryTreeNode object or null. It represents the
1736
- root node of a binary tree. If it is null, the function will use the root node of the current binary tree instance.</p>
1674
+ <div class="tsd-comment tsd-typography"><p>The root node of the binary tree or null. If null, the function will use the root node of the current binary tree instance.</p>
1737
1675
  </div>
1738
1676
  <div class="tsd-comment tsd-typography"></div></li>
1739
1677
  <li>
1740
- <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;id&quot;</span></h5>
1741
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is an optional parameter that
1742
- specifies the property of the <code>BinaryTreeNode</code> object to collect at each level. It can be one of the following
1743
- values:</p>
1744
- </div>
1745
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
1746
- <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>
1747
-
1678
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;id&quot;</span></h5></li></ul></div>
1679
+ <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>
1748
1680
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1749
1681
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1750
1682
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1751
1683
  <ul>
1752
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1081">src/data-structures/binary-tree/abstract-binary-tree.ts:1081</a></li></ul></aside></li>
1684
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1201">src/data-structures/binary-tree/abstract-binary-tree.ts:1201</a></li></ul></aside></li>
1753
1685
  <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>
1754
1686
  <li class="tsd-description">
1755
- <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>
1687
+ <div class="tsd-comment tsd-typography"><p>Collects nodes from a binary tree by a specified property and organizes them into levels.</p>
1756
1688
  </div>
1757
1689
  <div class="tsd-parameters">
1758
1690
  <h4 class="tsd-parameters-title">Parameters</h4>
1759
1691
  <ul class="tsd-parameter-list">
1760
1692
  <li>
1761
1693
  <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>
1762
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is a BinaryTreeNode object or null. It represents the
1763
- root node of a binary tree. If it is null, the function will use the root node of the current binary tree instance.</p>
1694
+ <div class="tsd-comment tsd-typography"><p>The root node of the binary tree or null. If null, the function will use the root node of the current binary tree instance.</p>
1764
1695
  </div>
1765
1696
  <div class="tsd-comment tsd-typography"></div></li>
1766
1697
  <li>
1767
1698
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
1768
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is an optional parameter that
1769
- specifies the property of the <code>BinaryTreeNode</code> object to collect at each level. It can be one of the following
1770
- values:</p>
1699
+ <div class="tsd-comment tsd-typography"><p>The property of the BinaryTreeNode object to collect at each level.</p>
1771
1700
  </div>
1772
1701
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1773
- <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>
1702
+ <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>A 2D array of &#39;val&#39; properties from each node.</p>
1774
1703
 
1775
1704
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1776
1705
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1777
1706
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1778
1707
  <ul>
1779
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1083">src/data-structures/binary-tree/abstract-binary-tree.ts:1083</a></li></ul></aside></li>
1708
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1209">src/data-structures/binary-tree/abstract-binary-tree.ts:1209</a></li></ul></aside></li>
1780
1709
  <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>
1781
1710
  <li class="tsd-description">
1782
- <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>
1711
+ <div class="tsd-comment tsd-typography"><p>Collects nodes from a binary tree by a specified property and organizes them into levels.</p>
1783
1712
  </div>
1784
1713
  <div class="tsd-parameters">
1785
1714
  <h4 class="tsd-parameters-title">Parameters</h4>
1786
1715
  <ul class="tsd-parameter-list">
1787
1716
  <li>
1788
1717
  <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>
1789
- <div class="tsd-comment tsd-typography"><p>The <code>node</code> parameter is a BinaryTreeNode object or null. It represents the
1790
- root node of a binary tree. If it is null, the function will use the root node of the current binary tree instance.</p>
1718
+ <div class="tsd-comment tsd-typography"><p>The root node of the binary tree or null. If null, the function will use the root node of the current binary tree instance.</p>
1791
1719
  </div>
1792
1720
  <div class="tsd-comment tsd-typography"></div></li>
1793
1721
  <li>
1794
1722
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
1795
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is an optional parameter that
1796
- specifies the property of the <code>BinaryTreeNode</code> object to collect at each level. It can be one of the following
1797
- values:</p>
1723
+ <div class="tsd-comment tsd-typography"><p>The property of the BinaryTreeNode object to collect at each level.</p>
1798
1724
  </div>
1799
1725
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1800
- <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>
1726
+ <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>A 2D array of binary tree nodes.</p>
1801
1727
 
1802
1728
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1803
1729
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#listLevels">listLevels</a></p>
1804
1730
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#listLevels">listLevels</a></p>
1805
1731
  <ul>
1806
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1085">src/data-structures/binary-tree/abstract-binary-tree.ts:1085</a></li></ul></aside></li></ul></section>
1732
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1217">src/data-structures/binary-tree/abstract-binary-tree.ts:1217</a></li></ul></aside></li></ul></section>
1807
1733
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="morris" class="tsd-anchor"></a>
1808
1734
  <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>
1809
1735
  <ul class="tsd-signatures tsd-is-inherited">
1810
1736
  <li class="tsd-signature tsd-anchor-link" id="morris.morris-1"><span class="tsd-kind-call-signature">morris</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-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
1811
1737
  <li class="tsd-description">
1812
- <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
1813
- traversal algorithm.</p>
1738
+ <div class="tsd-comment tsd-typography"><p>Performs an in-order, pre-order, or post-order traversal on a binary tree using the Morris traversal algorithm.</p>
1814
1739
  </div>
1815
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an array of AbstractBinaryTreeNodeProperties<N> objects.</p>
1740
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of binary tree node IDs.</p>
1816
1741
 
1817
1742
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1818
1743
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
1819
1744
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
1820
1745
  <ul>
1821
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1165">src/data-structures/binary-tree/abstract-binary-tree.ts:1165</a></li></ul></aside></li>
1746
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1303">src/data-structures/binary-tree/abstract-binary-tree.ts:1303</a></li></ul></aside></li>
1822
1747
  <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>
1823
1748
  <li class="tsd-description">
1824
- <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
1825
- traversal algorithm.</p>
1749
+ <div class="tsd-comment tsd-typography"><p>Performs an in-order, pre-order, or post-order traversal on a binary tree using the Morris traversal algorithm and accumulates properties of each node based on the specified property name.</p>
1826
1750
  </div>
1827
1751
  <div class="tsd-parameters">
1828
1752
  <h4 class="tsd-parameters-title">Parameters</h4>
1829
1753
  <ul class="tsd-parameter-list">
1830
1754
  <li>
1831
1755
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
1832
- <div class="tsd-comment tsd-typography"><p>The <code>pattern</code> parameter determines the traversal pattern for the binary
1833
- tree. It can have one of three values:</p>
1756
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
1834
1757
  </div>
1835
1758
  <div class="tsd-comment tsd-typography"></div></li>
1836
1759
  <li>
1837
1760
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;id&quot;</span></h5>
1838
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is used to specify the
1839
- property name of the nodes that you want to retrieve. It can be any valid property name of the nodes in the binary
1840
- tree.</p>
1761
+ <div class="tsd-comment tsd-typography"><p>The name of the property to accumulate.</p>
1841
1762
  </div>
1842
1763
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1843
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>an array of AbstractBinaryTreeNodeProperties<N> objects.</p>
1764
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><p>An array of values corresponding to the specified property.</p>
1844
1765
 
1845
1766
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1846
1767
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
1847
1768
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
1848
1769
  <ul>
1849
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1167">src/data-structures/binary-tree/abstract-binary-tree.ts:1167</a></li></ul></aside></li>
1770
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1311">src/data-structures/binary-tree/abstract-binary-tree.ts:1311</a></li></ul></aside></li>
1850
1771
  <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>
1851
1772
  <li class="tsd-description">
1852
- <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
1853
- traversal algorithm.</p>
1773
+ <div class="tsd-comment tsd-typography"><p>Performs an in-order, pre-order, or post-order traversal on a binary tree using the Morris traversal algorithm and accumulates the &#39;val&#39; property of each node.</p>
1854
1774
  </div>
1855
1775
  <div class="tsd-parameters">
1856
1776
  <h4 class="tsd-parameters-title">Parameters</h4>
1857
1777
  <ul class="tsd-parameter-list">
1858
1778
  <li>
1859
1779
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
1860
- <div class="tsd-comment tsd-typography"><p>The <code>pattern</code> parameter determines the traversal pattern for the binary
1861
- tree. It can have one of three values:</p>
1780
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
1862
1781
  </div>
1863
1782
  <div class="tsd-comment tsd-typography"></div></li>
1864
1783
  <li>
1865
1784
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
1866
- <div class="tsd-comment tsd-typography"><p>The <code>nodeOrPropertyName</code> parameter is used to specify the
1867
- property name of the nodes that you want to retrieve. It can be any valid property name of the nodes in the binary
1868
- tree.</p>
1785
+ <div class="tsd-comment tsd-typography"><p>The property of the BinaryTreeNode object to collect at each level.</p>
1869
1786
  </div>
1870
1787
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
1871
- <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 AbstractBinaryTreeNodeProperties<N> objects.</p>
1788
+ <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 &#39;val&#39; properties from each node.</p>
1872
1789
 
1873
1790
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1874
1791
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
1875
1792
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
1876
1793
  <ul>
1877
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1169">src/data-structures/binary-tree/abstract-binary-tree.ts:1169</a></li></ul></aside></li>
1794
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L1319">src/data-structures/binary-tree/abstract-binary-tree.ts:1319</a></li></ul></aside></li>
1878
1795
  <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>
1879
1796
  <li class="tsd-description">
1880
- <div class="tsd-comment tsd-typography"><p>Time complexity is O(n)
1881
- Space complexity of Iterative DFS equals to recursive DFS which is O(n) because of the stack</p>
1797
+ <div class="tsd-comment tsd-typography"><p>Performs an in-order, pre-order, or post-order traversal on a binary tree using the Morris traversal algorithm and accumulates nodes themselves.</p>
1882
1798
  </div>
1883
1799
  <div class="tsd-parameters">
1884
1800
  <h4 class="tsd-parameters-title">Parameters</h4>
1885
1801
  <ul class="tsd-parameter-list">
1886
1802
  <li>
1887
- <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5></li>
1803
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">pattern</span>: <a href="../types/DFSOrderPattern.html" class="tsd-signature-type tsd-kind-type-alias">DFSOrderPattern</a></h5>
1804
+ <div class="tsd-comment tsd-typography"><p>The traversal pattern: &#39;in&#39; (in-order), &#39;pre&#39; (pre-order), or &#39;post&#39; (post-order).</p>
1805
+ </div>
1806
+ <div class="tsd-comment tsd-typography"></div></li>
1888
1807
  <li>
1889
- <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5></li></ul></div>
1890
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">N</span><span class="tsd-signature-symbol">[]</span></h4>
1808
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">nodeOrPropertyName</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
1809
+ <div class="tsd-comment tsd-typography"><p>The property of the BinaryTreeNode object to collect at each level.</p>
1810
+ </div>
1811
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
1812
+ <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 binary tree nodes.</p>
1813
+
1891
1814
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1892
1815
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#morris">morris</a></p>
1893
1816
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#morris">morris</a></p>
1894
1817
  <ul>
1895
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L1176">src/data-structures/binary-tree/abstract-binary-tree.ts:1176</a></li></ul></aside></li></ul></section>
1818
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/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>
1896
1819
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="perfectlyBalance" class="tsd-anchor"></a>
1897
1820
  <h3 class="tsd-anchor-link"><span>perfectly<wbr/>Balance</span><a href="#perfectlyBalance" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
1898
1821
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1907,7 +1830,7 @@ constructs a balanced binary search tree using either a recursive or iterative a
1907
1830
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#perfectlyBalance">perfectlyBalance</a></p>
1908
1831
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#perfectlyBalance">perfectlyBalance</a></p>
1909
1832
  <ul>
1910
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/bst.ts#L440">src/data-structures/binary-tree/bst.ts:440</a></li></ul></aside></li></ul></section>
1833
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/bst.ts#L440">src/data-structures/binary-tree/bst.ts:440</a></li></ul></aside></li></ul></section>
1911
1834
  <section class="tsd-panel tsd-member"><a id="remove" class="tsd-anchor"></a>
1912
1835
  <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>
1913
1836
  <ul class="tsd-signatures">
@@ -1938,7 +1861,7 @@ determines whether the left sum of all nodes in the AVL tree should be updated a
1938
1861
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#remove">remove</a></p>
1939
1862
  <p>Overrides <a href="BST.html">BST</a>.<a href="BST.html#remove">remove</a></p>
1940
1863
  <ul>
1941
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/avl-tree.ts#L68">src/data-structures/binary-tree/avl-tree.ts:68</a></li></ul></aside></li></ul></section>
1864
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/avl-tree.ts#L68">src/data-structures/binary-tree/avl-tree.ts:68</a></li></ul></aside></li></ul></section>
1942
1865
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="subTreeAdd" class="tsd-anchor"></a>
1943
1866
  <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>
1944
1867
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1973,7 +1896,7 @@ specifies the property of the binary tree node that should be modified. If not p
1973
1896
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#subTreeAdd">subTreeAdd</a></p>
1974
1897
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#subTreeAdd">subTreeAdd</a></p>
1975
1898
  <ul>
1976
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L845">src/data-structures/binary-tree/abstract-binary-tree.ts:845</a></li></ul></aside></li></ul></section>
1899
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L878">src/data-structures/binary-tree/abstract-binary-tree.ts:878</a></li></ul></aside></li></ul></section>
1977
1900
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="subTreeSum" class="tsd-anchor"></a>
1978
1901
  <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>
1979
1902
  <ul class="tsd-signatures tsd-is-inherited">
@@ -2003,7 +1926,7 @@ not provided, it defaults to &#39;id&#39;.</p>
2003
1926
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#subTreeSum">subTreeSum</a></p>
2004
1927
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#subTreeSum">subTreeSum</a></p>
2005
1928
  <ul>
2006
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L789">src/data-structures/binary-tree/abstract-binary-tree.ts:789</a></li></ul></aside></li></ul></section>
1929
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/src/data-structures/binary-tree/abstract-binary-tree.ts#L822">src/data-structures/binary-tree/abstract-binary-tree.ts:822</a></li></ul></aside></li></ul></section>
2007
1930
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="swapLocation" class="tsd-anchor"></a>
2008
1931
  <h3 class="tsd-anchor-link"><span>swap<wbr/>Location</span><a href="#swapLocation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
2009
1932
  <ul class="tsd-signatures tsd-is-inherited">
@@ -2031,7 +1954,7 @@ be swapped to.</p>
2031
1954
  <p>Implementation of <a href="../interfaces/IAVLTree.html">IAVLTree</a>.<a href="../interfaces/IAVLTree.html#swapLocation">swapLocation</a></p>
2032
1955
  <p>Inherited from <a href="BST.html">BST</a>.<a href="BST.html#swapLocation">swapLocation</a></p>
2033
1956
  <ul>
2034
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/83d3f8d/src/data-structures/binary-tree/abstract-binary-tree.ts#L205">src/data-structures/binary-tree/abstract-binary-tree.ts:205</a></li></ul></aside></li></ul></section></section></div>
1957
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/6996813/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></section></div>
2035
1958
  <div class="col-sidebar">
2036
1959
  <div class="page-menu">
2037
1960
  <div class="tsd-navigation settings">