data-structure-typed 1.17.4 → 1.18.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 (131) hide show
  1. package/dist/data-structures/binary-tree/avl-tree.js +4 -4
  2. package/dist/data-structures/binary-tree/binary-indexed-tree.d.ts +3 -1
  3. package/dist/data-structures/binary-tree/binary-indexed-tree.js +10 -0
  4. package/dist/data-structures/binary-tree/binary-tree.d.ts +41 -68
  5. package/dist/data-structures/binary-tree/binary-tree.js +126 -103
  6. package/dist/data-structures/binary-tree/bst.js +18 -19
  7. package/dist/data-structures/binary-tree/segment-tree.d.ts +17 -39
  8. package/dist/data-structures/binary-tree/segment-tree.js +34 -47
  9. package/dist/data-structures/graph/abstract-graph.d.ts +3 -16
  10. package/dist/data-structures/graph/abstract-graph.js +3 -24
  11. package/dist/data-structures/graph/directed-graph.d.ts +3 -11
  12. package/dist/data-structures/graph/directed-graph.js +2 -14
  13. package/dist/data-structures/graph/undirected-graph.d.ts +1 -5
  14. package/dist/data-structures/graph/undirected-graph.js +3 -9
  15. package/dist/data-structures/hash/coordinate-map.d.ts +1 -5
  16. package/dist/data-structures/hash/coordinate-map.js +3 -9
  17. package/dist/data-structures/hash/coordinate-set.d.ts +1 -5
  18. package/dist/data-structures/hash/coordinate-set.js +3 -9
  19. package/dist/data-structures/hash/hash-table.d.ts +2 -1
  20. package/dist/data-structures/hash/hash-table.js +7 -0
  21. package/dist/data-structures/hash/pair.d.ts +2 -1
  22. package/dist/data-structures/hash/pair.js +7 -0
  23. package/dist/data-structures/hash/tree-map.d.ts +2 -1
  24. package/dist/data-structures/hash/tree-map.js +7 -0
  25. package/dist/data-structures/hash/tree-set.d.ts +2 -1
  26. package/dist/data-structures/hash/tree-set.js +7 -0
  27. package/dist/data-structures/heap/heap.d.ts +0 -14
  28. package/dist/data-structures/heap/heap.js +3 -27
  29. package/dist/data-structures/linked-list/doubly-linked-list.d.ts +0 -2
  30. package/dist/data-structures/linked-list/doubly-linked-list.js +12 -18
  31. package/dist/data-structures/linked-list/singly-linked-list.d.ts +0 -1
  32. package/dist/data-structures/linked-list/singly-linked-list.js +12 -15
  33. package/dist/data-structures/tree/tree.d.ts +12 -4
  34. package/dist/data-structures/tree/tree.js +44 -12
  35. package/dist/data-structures/trie/trie.d.ts +3 -3
  36. package/dist/data-structures/trie/trie.js +10 -10
  37. package/dist/data-structures/types/doubly-linked-list.d.ts +1 -1
  38. package/docs/assets/search.js +1 -1
  39. package/docs/classes/AVLTree.html +370 -224
  40. package/docs/classes/AVLTreeNode.html +24 -202
  41. package/docs/classes/AaTree.html +5 -2
  42. package/docs/classes/AbstractEdge.html +32 -57
  43. package/docs/classes/AbstractGraph.html +35 -32
  44. package/docs/classes/AbstractVertex.html +10 -25
  45. package/docs/classes/ArrayDeque.html +18 -15
  46. package/docs/classes/BST.html +363 -217
  47. package/docs/classes/BSTNode.html +24 -202
  48. package/docs/classes/BTree.html +5 -2
  49. package/docs/classes/BinaryIndexedTree.html +43 -10
  50. package/docs/classes/BinaryTree.html +385 -182
  51. package/docs/classes/BinaryTreeNode.html +64 -165
  52. package/docs/classes/Character.html +8 -5
  53. package/docs/classes/CoordinateMap.html +36 -41
  54. package/docs/classes/CoordinateSet.html +35 -40
  55. package/docs/classes/Deque.html +38 -57
  56. package/docs/classes/DirectedEdge.html +44 -82
  57. package/docs/classes/DirectedGraph.html +50 -47
  58. package/docs/classes/DirectedVertex.html +10 -26
  59. package/docs/classes/DoublyLinkedList.html +41 -58
  60. package/docs/classes/DoublyLinkedListNode.html +15 -12
  61. package/docs/classes/HashTable.html +153 -0
  62. package/docs/classes/Heap.html +19 -97
  63. package/docs/classes/HeapItem.html +12 -9
  64. package/docs/classes/Matrix2D.html +20 -17
  65. package/docs/classes/MatrixNTI2D.html +8 -5
  66. package/docs/classes/MaxHeap.html +19 -102
  67. package/docs/classes/MaxPriorityQueue.html +38 -35
  68. package/docs/classes/MinHeap.html +19 -102
  69. package/docs/classes/MinPriorityQueue.html +38 -35
  70. package/docs/classes/Navigator.html +14 -11
  71. package/docs/classes/ObjectDeque.html +29 -26
  72. package/docs/classes/Pair.html +153 -0
  73. package/docs/classes/PriorityQueue.html +36 -33
  74. package/docs/classes/Queue.html +18 -15
  75. package/docs/classes/RBTree.html +5 -2
  76. package/docs/classes/SegmentTree.html +116 -46
  77. package/docs/classes/SegmentTreeNode.html +49 -129
  78. package/docs/classes/SinglyLinkedList.html +38 -45
  79. package/docs/classes/SinglyLinkedListNode.html +12 -9
  80. package/docs/classes/SkipLinkedList.html +5 -2
  81. package/docs/classes/SplayTree.html +5 -2
  82. package/docs/classes/Stack.html +16 -13
  83. package/docs/classes/TreeMap.html +153 -0
  84. package/docs/classes/TreeMultiSet.html +363 -217
  85. package/docs/classes/TreeNode.html +112 -24
  86. package/docs/classes/TreeSet.html +153 -0
  87. package/docs/classes/Trie.html +17 -14
  88. package/docs/classes/TrieNode.html +20 -17
  89. package/docs/classes/TwoThreeTree.html +5 -2
  90. package/docs/classes/UndirectedEdge.html +44 -56
  91. package/docs/classes/UndirectedGraph.html +49 -54
  92. package/docs/classes/UndirectedVertex.html +10 -26
  93. package/docs/classes/Vector2D.html +32 -29
  94. package/docs/enums/CP.html +8 -5
  95. package/docs/enums/FamilyPosition.html +8 -5
  96. package/docs/enums/LoopType.html +7 -4
  97. package/docs/index.html +8 -1
  98. package/docs/interfaces/AVLTreeDeleted.html +7 -4
  99. package/docs/interfaces/HeapOptions.html +6 -3
  100. package/docs/interfaces/IDirectedGraph.html +11 -8
  101. package/docs/interfaces/IGraph.html +23 -20
  102. package/docs/interfaces/NavigatorParams.html +9 -6
  103. package/docs/interfaces/PriorityQueueOptions.html +8 -5
  104. package/docs/modules.html +8 -2
  105. package/docs/types/BSTComparator.html +5 -2
  106. package/docs/types/BSTDeletedResult.html +5 -2
  107. package/docs/types/BinaryTreeDeleted.html +5 -2
  108. package/docs/types/BinaryTreeNodeId.html +5 -2
  109. package/docs/types/BinaryTreeNodePropertyName.html +5 -2
  110. package/docs/types/DFSOrderPattern.html +5 -2
  111. package/docs/types/DijkstraResult.html +5 -2
  112. package/docs/types/Direction.html +5 -2
  113. package/docs/types/NodeOrPropertyName.html +5 -2
  114. package/docs/types/PriorityQueueComparator.html +5 -2
  115. package/docs/types/PriorityQueueDFSOrderPattern.html +5 -2
  116. package/docs/types/ResultByProperty.html +5 -2
  117. package/docs/types/ResultsByProperty.html +5 -2
  118. package/docs/types/SegmentTreeNodeVal.html +5 -2
  119. package/docs/types/SpecifyOptional.html +5 -2
  120. package/docs/types/Thunk.html +5 -2
  121. package/docs/types/ToThunkFn.html +5 -2
  122. package/docs/types/TopologicalStatus.html +5 -2
  123. package/docs/types/TreeMultiSetDeletedResult.html +5 -2
  124. package/docs/types/TrlAsyncFn.html +5 -2
  125. package/docs/types/TrlFn.html +5 -2
  126. package/docs/types/Turning.html +5 -2
  127. package/docs/types/VertexId.html +5 -2
  128. package/notes/note.md +5 -1
  129. package/package.json +2 -2
  130. package/tsconfig.json +2 -2
  131. package/docs/types/DoublyLinkedListGetBy.html +0 -125
@@ -20,7 +20,7 @@
20
20
  <ul class="tsd-hierarchy">
21
21
  <li><span class="target">RBTree</span></li></ul></section><aside class="tsd-sources">
22
22
  <ul>
23
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/rb-tree.ts#L1">src/data-structures/binary-tree/rb-tree.ts:1</a></li></ul></aside>
23
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/rb-tree.ts#L1">src/data-structures/binary-tree/rb-tree.ts:1</a></li></ul></aside>
24
24
  <section class="tsd-panel-group tsd-index-group">
25
25
  <section class="tsd-panel tsd-index-panel">
26
26
  <details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
@@ -86,6 +86,7 @@
86
86
  <li><a href="DirectedVertex.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Directed<wbr/>Vertex</span></a></li>
87
87
  <li><a href="DoublyLinkedList.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Doubly<wbr/>Linked<wbr/>List</span></a></li>
88
88
  <li><a href="DoublyLinkedListNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Doubly<wbr/>Linked<wbr/>List<wbr/>Node</span></a></li>
89
+ <li><a href="HashTable.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Hash<wbr/>Table</span></a></li>
89
90
  <li><a href="Heap.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Heap</span></a></li>
90
91
  <li><a href="HeapItem.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Heap<wbr/>Item</span></a></li>
91
92
  <li><a href="Matrix2D.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Matrix2D</span></a></li>
@@ -96,6 +97,7 @@
96
97
  <li><a href="MinPriorityQueue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Min<wbr/>Priority<wbr/>Queue</span></a></li>
97
98
  <li><a href="Navigator.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Navigator</span></a></li>
98
99
  <li><a href="ObjectDeque.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Object<wbr/>Deque</span></a></li>
100
+ <li><a href="Pair.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Pair</span></a></li>
99
101
  <li><a href="PriorityQueue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Priority<wbr/>Queue</span></a></li>
100
102
  <li><a href="Queue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Queue</span></a></li>
101
103
  <li><a href="RBTree.html" class="current"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>RBTree</span></a></li>
@@ -106,8 +108,10 @@
106
108
  <li><a href="SkipLinkedList.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Skip<wbr/>Linked<wbr/>List</span></a></li>
107
109
  <li><a href="SplayTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Splay<wbr/>Tree</span></a></li>
108
110
  <li><a href="Stack.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Stack</span></a></li>
111
+ <li><a href="TreeMap.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Tree<wbr/>Map</span></a></li>
109
112
  <li><a href="TreeMultiSet.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Tree<wbr/>Multi<wbr/>Set</span></a></li>
110
113
  <li><a href="TreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Tree<wbr/>Node</span></a></li>
114
+ <li><a href="TreeSet.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Tree<wbr/>Set</span></a></li>
111
115
  <li><a href="Trie.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Trie</span></a></li>
112
116
  <li><a href="TrieNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Trie<wbr/>Node</span></a></li>
113
117
  <li><a href="TwoThreeTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Two<wbr/>Three<wbr/>Tree</span></a></li>
@@ -129,7 +133,6 @@
129
133
  <li><a href="../types/DFSOrderPattern.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>DFSOrder<wbr/>Pattern</span></a></li>
130
134
  <li><a href="../types/DijkstraResult.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Dijkstra<wbr/>Result</span></a></li>
131
135
  <li><a href="../types/Direction.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Direction</span></a></li>
132
- <li><a href="../types/DoublyLinkedListGetBy.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Doubly<wbr/>Linked<wbr/>List<wbr/>Get<wbr/>By</span></a></li>
133
136
  <li><a href="../types/NodeOrPropertyName.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Node<wbr/>Or<wbr/>Property<wbr/>Name</span></a></li>
134
137
  <li><a href="../types/PriorityQueueComparator.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Priority<wbr/>Queue<wbr/>Comparator</span></a></li>
135
138
  <li><a href="../types/PriorityQueueDFSOrderPattern.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Priority<wbr/>QueueDFSOrder<wbr/>Pattern</span></a></li>
@@ -20,7 +20,7 @@
20
20
  <ul class="tsd-hierarchy">
21
21
  <li><span class="target">SegmentTree</span></li></ul></section><aside class="tsd-sources">
22
22
  <ul>
23
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L121">src/data-structures/binary-tree/segment-tree.ts:121</a></li></ul></aside>
23
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L79">src/data-structures/binary-tree/segment-tree.ts:79</a></li></ul></aside>
24
24
  <section class="tsd-panel-group tsd-index-group">
25
25
  <section class="tsd-panel tsd-index-panel">
26
26
  <details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
@@ -32,19 +32,25 @@
32
32
  </div></section>
33
33
  <section class="tsd-index-section">
34
34
  <h3 class="tsd-index-heading">Properties</h3>
35
- <div class="tsd-index-list"><a href="SegmentTree.html#_end" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-1024"><rect fill="var(--color-icon-background)" stroke="#FF984D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.354 16V7.24H12.174C12.99 7.24 13.638 7.476 14.118 7.948C14.606 8.412 14.85 9.036 14.85 9.82C14.85 10.604 14.606 11.232 14.118 11.704C13.638 12.168 12.99 12.4 12.174 12.4H10.434V16H9.354ZM10.434 11.428H12.174C12.646 11.428 13.022 11.284 13.302 10.996C13.59 10.7 13.734 10.308 13.734 9.82C13.734 9.324 13.59 8.932 13.302 8.644C13.022 8.356 12.646 8.212 12.174 8.212H10.434V11.428Z" fill="var(--color-text)"></path></g></svg><span>_end</span></a>
36
- <a href="SegmentTree.html#_root" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_root</span></a>
37
- <a href="SegmentTree.html#_start" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_start</span></a>
38
- <a href="SegmentTree.html#_values" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_values</span></a>
35
+ <div class="tsd-index-list"><a href="SegmentTree.html#_end" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-1024"><rect fill="var(--color-icon-background)" stroke="#FF984D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.354 16V7.24H12.174C12.99 7.24 13.638 7.476 14.118 7.948C14.606 8.412 14.85 9.036 14.85 9.82C14.85 10.604 14.606 11.232 14.118 11.704C13.638 12.168 12.99 12.4 12.174 12.4H10.434V16H9.354ZM10.434 11.428H12.174C12.646 11.428 13.022 11.284 13.302 10.996C13.59 10.7 13.734 10.308 13.734 9.82C13.734 9.324 13.59 8.932 13.302 8.644C13.022 8.356 12.646 8.212 12.174 8.212H10.434V11.428Z" fill="var(--color-text)"></path></g></svg><span>_end</span></a>
36
+ <a href="SegmentTree.html#_root" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_root</span></a>
37
+ <a href="SegmentTree.html#_start" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_start</span></a>
38
+ <a href="SegmentTree.html#_values" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_values</span></a>
39
39
  </div></section>
40
40
  <section class="tsd-index-section">
41
41
  <h3 class="tsd-index-heading">Accessors</h3>
42
- <div class="tsd-index-list"><a href="SegmentTree.html#root" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-262144"><rect fill="var(--color-icon-background)" stroke="#FF4D4D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M8.85 16L11.13 7.24H12.582L14.85 16H13.758L13.182 13.672H10.53L9.954 16H8.85ZM10.746 12.76H12.954L12.282 10.06C12.154 9.548 12.054 9.12 11.982 8.776C11.91 8.432 11.866 8.208 11.85 8.104C11.834 8.208 11.79 8.432 11.718 8.776C11.646 9.12 11.546 9.544 11.418 10.048L10.746 12.76Z" fill="var(--color-text)"></path></g></svg><span>root</span></a>
42
+ <div class="tsd-index-list"><a href="SegmentTree.html#end" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-262144"><rect fill="var(--color-icon-background)" stroke="#FF4D4D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M8.85 16L11.13 7.24H12.582L14.85 16H13.758L13.182 13.672H10.53L9.954 16H8.85ZM10.746 12.76H12.954L12.282 10.06C12.154 9.548 12.054 9.12 11.982 8.776C11.91 8.432 11.866 8.208 11.85 8.104C11.834 8.208 11.79 8.432 11.718 8.776C11.646 9.12 11.546 9.544 11.418 10.048L10.746 12.76Z" fill="var(--color-text)"></path></g></svg><span>end</span></a>
43
+ <a href="SegmentTree.html#root" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>root</span></a>
44
+ <a href="SegmentTree.html#start" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>start</span></a>
45
+ <a href="SegmentTree.html#values" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>values</span></a>
43
46
  </div></section>
44
47
  <section class="tsd-index-section">
45
48
  <h3 class="tsd-index-heading">Methods</h3>
46
- <div class="tsd-index-list"><a href="SegmentTree.html#build" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-2048"><rect fill="var(--color-icon-background)" stroke="#FF4DB8" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.162 16V7.24H10.578L11.514 10.072C11.602 10.328 11.674 10.584 11.73 10.84C11.794 11.088 11.842 11.28 11.874 11.416C11.906 11.28 11.954 11.088 12.018 10.84C12.082 10.584 12.154 10.324 12.234 10.06L13.122 7.24H14.538V16H13.482V12.82C13.482 12.468 13.49 12.068 13.506 11.62C13.53 11.172 13.558 10.716 13.59 10.252C13.622 9.78 13.654 9.332 13.686 8.908C13.726 8.476 13.762 8.1 13.794 7.78L12.366 12.16H11.334L9.894 7.78C9.934 8.092 9.97 8.456 10.002 8.872C10.042 9.28 10.078 9.716 10.11 10.18C10.142 10.636 10.166 11.092 10.182 11.548C10.206 12.004 10.218 12.428 10.218 12.82V16H9.162Z" fill="var(--color-text)"></path></g></svg><span>build</span></a>
47
- <a href="SegmentTree.html#getRoot" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Root</span></a>
49
+ <div class="tsd-index-list"><a href="SegmentTree.html#_setEnd" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-2048"><rect fill="var(--color-icon-background)" stroke="#FF4DB8" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.162 16V7.24H10.578L11.514 10.072C11.602 10.328 11.674 10.584 11.73 10.84C11.794 11.088 11.842 11.28 11.874 11.416C11.906 11.28 11.954 11.088 12.018 10.84C12.082 10.584 12.154 10.324 12.234 10.06L13.122 7.24H14.538V16H13.482V12.82C13.482 12.468 13.49 12.068 13.506 11.62C13.53 11.172 13.558 10.716 13.59 10.252C13.622 9.78 13.654 9.332 13.686 8.908C13.726 8.476 13.762 8.1 13.794 7.78L12.366 12.16H11.334L9.894 7.78C9.934 8.092 9.97 8.456 10.002 8.872C10.042 9.28 10.078 9.716 10.11 10.18C10.142 10.636 10.166 11.092 10.182 11.548C10.206 12.004 10.218 12.428 10.218 12.82V16H9.162Z" fill="var(--color-text)"></path></g></svg><span>_set<wbr/>End</span></a>
50
+ <a href="SegmentTree.html#_setRoot" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Root</span></a>
51
+ <a href="SegmentTree.html#_setStart" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Start</span></a>
52
+ <a href="SegmentTree.html#_setValues" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Values</span></a>
53
+ <a href="SegmentTree.html#build" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>build</span></a>
48
54
  <a href="SegmentTree.html#querySumByRange" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>query<wbr/>Sum<wbr/>By<wbr/>Range</span></a>
49
55
  <a href="SegmentTree.html#updateNode" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>update<wbr/>Node</span></a>
50
56
  </div></section></div></details></section></section>
@@ -81,31 +87,39 @@ included in the range. If not provided, it defaults to the index of the last ele
81
87
  <h4 class="tsd-returns-title">Returns <a href="SegmentTree.html" class="tsd-signature-type tsd-kind-class">SegmentTree</a></h4>
82
88
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
83
89
  <ul>
84
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L135">src/data-structures/binary-tree/segment-tree.ts:135</a></li></ul></aside></li></ul></section></section>
90
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L89">src/data-structures/binary-tree/segment-tree.ts:89</a></li></ul></aside></li></ul></section></section>
85
91
  <section class="tsd-panel-group tsd-member-group">
86
92
  <h2>Properties</h2>
87
- <section class="tsd-panel tsd-member tsd-is-protected"><a id="_end" class="tsd-anchor"></a>
88
- <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_end</span><a href="#_end" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
93
+ <section class="tsd-panel tsd-member tsd-is-private"><a id="_end" class="tsd-anchor"></a>
94
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>_end</span><a href="#_end" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
89
95
  <div class="tsd-signature"><span class="tsd-kind-property">_end</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources">
90
96
  <ul>
91
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L124">src/data-structures/binary-tree/segment-tree.ts:124</a></li></ul></aside></section>
92
- <section class="tsd-panel tsd-member tsd-is-protected"><a id="_root" class="tsd-anchor"></a>
93
- <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <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>
97
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L109">src/data-structures/binary-tree/segment-tree.ts:109</a></li></ul></aside></section>
98
+ <section class="tsd-panel tsd-member tsd-is-private"><a id="_root" class="tsd-anchor"></a>
99
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <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>
94
100
  <div class="tsd-signature"><span class="tsd-kind-property">_root</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="SegmentTreeNode.html" class="tsd-signature-type tsd-kind-class">SegmentTreeNode</a></div><aside class="tsd-sources">
95
101
  <ul>
96
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L144">src/data-structures/binary-tree/segment-tree.ts:144</a></li></ul></aside></section>
97
- <section class="tsd-panel tsd-member tsd-is-protected"><a id="_start" class="tsd-anchor"></a>
98
- <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_start</span><a href="#_start" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
102
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L115">src/data-structures/binary-tree/segment-tree.ts:115</a></li></ul></aside></section>
103
+ <section class="tsd-panel tsd-member tsd-is-private"><a id="_start" class="tsd-anchor"></a>
104
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>_start</span><a href="#_start" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
99
105
  <div class="tsd-signature"><span class="tsd-kind-property">_start</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 0</span></div><aside class="tsd-sources">
100
106
  <ul>
101
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L123">src/data-structures/binary-tree/segment-tree.ts:123</a></li></ul></aside></section>
102
- <section class="tsd-panel tsd-member tsd-is-protected"><a id="_values" class="tsd-anchor"></a>
103
- <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_values</span><a href="#_values" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
107
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L104">src/data-structures/binary-tree/segment-tree.ts:104</a></li></ul></aside></section>
108
+ <section class="tsd-panel tsd-member tsd-is-private"><a id="_values" class="tsd-anchor"></a>
109
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>_values</span><a href="#_values" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
104
110
  <div class="tsd-signature"><span class="tsd-kind-property">_values</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></div><aside class="tsd-sources">
105
111
  <ul>
106
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L122">src/data-structures/binary-tree/segment-tree.ts:122</a></li></ul></aside></section></section>
112
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L98">src/data-structures/binary-tree/segment-tree.ts:98</a></li></ul></aside></section></section>
107
113
  <section class="tsd-panel-group tsd-member-group">
108
114
  <h2>Accessors</h2>
115
+ <section class="tsd-panel tsd-member"><a id="end" class="tsd-anchor"></a>
116
+ <h3 class="tsd-anchor-link"><span>end</span><a href="#end" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
117
+ <ul class="tsd-signatures">
118
+ <li class="tsd-signature" id="end.end-1"><span class="tsd-signature-symbol">get</span> end<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
119
+ <li class="tsd-description">
120
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
121
+ <ul>
122
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L111">src/data-structures/binary-tree/segment-tree.ts:111</a></li></ul></aside></li></ul></section>
109
123
  <section class="tsd-panel tsd-member"><a id="root" class="tsd-anchor"></a>
110
124
  <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>
111
125
  <ul class="tsd-signatures">
@@ -113,8 +127,42 @@ included in the range. If not provided, it defaults to the index of the last ele
113
127
  <li class="tsd-description">
114
128
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="SegmentTreeNode.html" class="tsd-signature-type tsd-kind-class">SegmentTreeNode</a></h4><aside class="tsd-sources">
115
129
  <ul>
116
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L145">src/data-structures/binary-tree/segment-tree.ts:145</a></li></ul></aside></li>
117
- <li class="tsd-signature" id="root.root-2"><span class="tsd-signature-symbol">set</span> root<span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">v</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
130
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L117">src/data-structures/binary-tree/segment-tree.ts:117</a></li></ul></aside></li></ul></section>
131
+ <section class="tsd-panel tsd-member"><a id="start" class="tsd-anchor"></a>
132
+ <h3 class="tsd-anchor-link"><span>start</span><a href="#start" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
133
+ <ul class="tsd-signatures">
134
+ <li class="tsd-signature" id="start.start-1"><span class="tsd-signature-symbol">get</span> start<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
135
+ <li class="tsd-description">
136
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
137
+ <ul>
138
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L105">src/data-structures/binary-tree/segment-tree.ts:105</a></li></ul></aside></li></ul></section>
139
+ <section class="tsd-panel tsd-member"><a id="values" class="tsd-anchor"></a>
140
+ <h3 class="tsd-anchor-link"><span>values</span><a href="#values" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
141
+ <ul class="tsd-signatures">
142
+ <li class="tsd-signature" id="values.values-1"><span class="tsd-signature-symbol">get</span> values<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></li>
143
+ <li class="tsd-description">
144
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
145
+ <ul>
146
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L100">src/data-structures/binary-tree/segment-tree.ts:100</a></li></ul></aside></li></ul></section></section>
147
+ <section class="tsd-panel-group tsd-member-group">
148
+ <h2>Methods</h2>
149
+ <section class="tsd-panel tsd-member tsd-is-protected"><a id="_setEnd" class="tsd-anchor"></a>
150
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>End</span><a href="#_setEnd" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
151
+ <ul class="tsd-signatures tsd-is-protected">
152
+ <li class="tsd-signature tsd-anchor-link" id="_setEnd._setEnd-1"><span class="tsd-kind-call-signature">_set<wbr/>End</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#_setEnd._setEnd-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
153
+ <li class="tsd-description">
154
+ <div class="tsd-parameters">
155
+ <h4 class="tsd-parameters-title">Parameters</h4>
156
+ <ul class="tsd-parameter-list">
157
+ <li>
158
+ <h5><span class="tsd-kind-parameter">value</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
159
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
160
+ <ul>
161
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L236">src/data-structures/binary-tree/segment-tree.ts:236</a></li></ul></aside></li></ul></section>
162
+ <section class="tsd-panel tsd-member tsd-is-protected"><a id="_setRoot" class="tsd-anchor"></a>
163
+ <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>
164
+ <ul class="tsd-signatures tsd-is-protected">
165
+ <li class="tsd-signature tsd-anchor-link" id="_setRoot._setRoot-1"><span class="tsd-kind-call-signature">_set<wbr/>Root</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">v</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#_setRoot._setRoot-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
118
166
  <li class="tsd-description">
119
167
  <div class="tsd-parameters">
120
168
  <h4 class="tsd-parameters-title">Parameters</h4>
@@ -123,9 +171,33 @@ included in the range. If not provided, it defaults to the index of the last ele
123
171
  <h5><span class="tsd-kind-parameter">v</span>: <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="SegmentTreeNode.html" class="tsd-signature-type tsd-kind-class">SegmentTreeNode</a></h5></li></ul></div>
124
172
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
125
173
  <ul>
126
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L149">src/data-structures/binary-tree/segment-tree.ts:149</a></li></ul></aside></li></ul></section></section>
127
- <section class="tsd-panel-group tsd-member-group">
128
- <h2>Methods</h2>
174
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L240">src/data-structures/binary-tree/segment-tree.ts:240</a></li></ul></aside></li></ul></section>
175
+ <section class="tsd-panel tsd-member tsd-is-protected"><a id="_setStart" class="tsd-anchor"></a>
176
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Start</span><a href="#_setStart" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
177
+ <ul class="tsd-signatures tsd-is-protected">
178
+ <li class="tsd-signature tsd-anchor-link" id="_setStart._setStart-1"><span class="tsd-kind-call-signature">_set<wbr/>Start</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#_setStart._setStart-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
179
+ <li class="tsd-description">
180
+ <div class="tsd-parameters">
181
+ <h4 class="tsd-parameters-title">Parameters</h4>
182
+ <ul class="tsd-parameter-list">
183
+ <li>
184
+ <h5><span class="tsd-kind-parameter">value</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
185
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
186
+ <ul>
187
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L232">src/data-structures/binary-tree/segment-tree.ts:232</a></li></ul></aside></li></ul></section>
188
+ <section class="tsd-panel tsd-member tsd-is-protected"><a id="_setValues" class="tsd-anchor"></a>
189
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Values</span><a href="#_setValues" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
190
+ <ul class="tsd-signatures tsd-is-protected">
191
+ <li class="tsd-signature tsd-anchor-link" id="_setValues._setValues-1"><span class="tsd-kind-call-signature">_set<wbr/>Values</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#_setValues._setValues-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
192
+ <li class="tsd-description">
193
+ <div class="tsd-parameters">
194
+ <h4 class="tsd-parameters-title">Parameters</h4>
195
+ <ul class="tsd-parameter-list">
196
+ <li>
197
+ <h5><span class="tsd-kind-parameter">value</span>: <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></h5></li></ul></div>
198
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
199
+ <ul>
200
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L228">src/data-structures/binary-tree/segment-tree.ts:228</a></li></ul></aside></li></ul></section>
129
201
  <section class="tsd-panel tsd-member"><a id="build" class="tsd-anchor"></a>
130
202
  <h3 class="tsd-anchor-link"><span>build</span><a href="#build" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
131
203
  <ul class="tsd-signatures">
@@ -153,18 +225,7 @@ building the segment tree.</p>
153
225
 
154
226
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
155
227
  <ul>
156
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L169">src/data-structures/binary-tree/segment-tree.ts:169</a></li></ul></aside></li></ul></section>
157
- <section class="tsd-panel tsd-member"><a id="getRoot" class="tsd-anchor"></a>
158
- <h3 class="tsd-anchor-link"><span>get<wbr/>Root</span><a href="#getRoot" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
159
- <ul class="tsd-signatures">
160
- <li class="tsd-signature tsd-anchor-link" id="getRoot.getRoot-1"><span class="tsd-kind-call-signature">get<wbr/>Root</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><a href="SegmentTreeNode.html" class="tsd-signature-type tsd-kind-class">SegmentTreeNode</a><a href="#getRoot.getRoot-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
161
- <li class="tsd-description">
162
- <div class="tsd-comment tsd-typography"><p>Starting from TypeScript version 5.0 and onwards, the use of distinct access modifiers for Getters and Setters is not permitted. As an alternative, to ensure compatibility, it is necessary to adopt a Java-style approach for Setters (using the same name as the property) while utilizing separate method names for Getters.</p>
163
- </div>
164
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="SegmentTreeNode.html" class="tsd-signature-type tsd-kind-class">SegmentTreeNode</a></h4>
165
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
166
- <ul>
167
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L156">src/data-structures/binary-tree/segment-tree.ts:156</a></li></ul></aside></li></ul></section>
228
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L130">src/data-structures/binary-tree/segment-tree.ts:130</a></li></ul></aside></li></ul></section>
168
229
  <section class="tsd-panel tsd-member"><a id="querySumByRange" class="tsd-anchor"></a>
169
230
  <h3 class="tsd-anchor-link"><span>query<wbr/>Sum<wbr/>By<wbr/>Range</span><a href="#querySumByRange" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
170
231
  <ul class="tsd-signatures">
@@ -190,7 +251,7 @@ calculate the sum.</p>
190
251
 
191
252
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
192
253
  <ul>
193
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L229">src/data-structures/binary-tree/segment-tree.ts:229</a></li></ul></aside></li></ul></section>
254
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L189">src/data-structures/binary-tree/segment-tree.ts:189</a></li></ul></aside></li></ul></section>
194
255
  <section class="tsd-panel tsd-member"><a id="updateNode" class="tsd-anchor"></a>
195
256
  <h3 class="tsd-anchor-link"><span>update<wbr/>Node</span><a href="#updateNode" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
196
257
  <ul class="tsd-signatures">
@@ -223,7 +284,7 @@ property of the <code>SegmentTreeNode</code> object. It is not currently used in
223
284
 
224
285
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
225
286
  <ul>
226
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/4813c6d/src/data-structures/binary-tree/segment-tree.ts#L193">src/data-structures/binary-tree/segment-tree.ts:193</a></li></ul></aside></li></ul></section></section></div>
287
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/c1b5969/src/data-structures/binary-tree/segment-tree.ts#L153">src/data-structures/binary-tree/segment-tree.ts:153</a></li></ul></aside></li></ul></section></section></div>
227
288
  <div class="col-sidebar">
228
289
  <div class="page-menu">
229
290
  <div class="tsd-navigation settings">
@@ -244,13 +305,19 @@ property of the <code>SegmentTreeNode</code> object. It is not currently used in
244
305
  <div class="tsd-accordion-details">
245
306
  <ul>
246
307
  <li><a href="#constructor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-512"></use></svg><span>constructor</span></a></li>
247
- <li><a href="#_end" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_end</span></a></li>
248
- <li><a href="#_root" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_root</span></a></li>
249
- <li><a href="#_start" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_start</span></a></li>
250
- <li><a href="#_values" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_values</span></a></li>
308
+ <li><a href="#_end" class="tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_end</span></a></li>
309
+ <li><a href="#_root" class="tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_root</span></a></li>
310
+ <li><a href="#_start" class="tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_start</span></a></li>
311
+ <li><a href="#_values" class="tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_values</span></a></li>
312
+ <li><a href="#end" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>end</span></a></li>
251
313
  <li><a href="#root" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>root</span></a></li>
314
+ <li><a href="#start" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>start</span></a></li>
315
+ <li><a href="#values" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>values</span></a></li>
316
+ <li><a href="#_setEnd" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>End</span></a></li>
317
+ <li><a href="#_setRoot" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Root</span></a></li>
318
+ <li><a href="#_setStart" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Start</span></a></li>
319
+ <li><a href="#_setValues" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Values</span></a></li>
252
320
  <li><a href="#build" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>build</span></a></li>
253
- <li><a href="#getRoot" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Root</span></a></li>
254
321
  <li><a href="#querySumByRange" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>query<wbr/>Sum<wbr/>By<wbr/>Range</span></a></li>
255
322
  <li><a href="#updateNode" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>update<wbr/>Node</span></a></li></ul></div></details></div>
256
323
  <div class="site-menu">
@@ -281,6 +348,7 @@ property of the <code>SegmentTreeNode</code> object. It is not currently used in
281
348
  <li><a href="DirectedVertex.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Directed<wbr/>Vertex</span></a></li>
282
349
  <li><a href="DoublyLinkedList.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Doubly<wbr/>Linked<wbr/>List</span></a></li>
283
350
  <li><a href="DoublyLinkedListNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Doubly<wbr/>Linked<wbr/>List<wbr/>Node</span></a></li>
351
+ <li><a href="HashTable.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Hash<wbr/>Table</span></a></li>
284
352
  <li><a href="Heap.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Heap</span></a></li>
285
353
  <li><a href="HeapItem.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Heap<wbr/>Item</span></a></li>
286
354
  <li><a href="Matrix2D.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Matrix2D</span></a></li>
@@ -291,6 +359,7 @@ property of the <code>SegmentTreeNode</code> object. It is not currently used in
291
359
  <li><a href="MinPriorityQueue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Min<wbr/>Priority<wbr/>Queue</span></a></li>
292
360
  <li><a href="Navigator.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Navigator</span></a></li>
293
361
  <li><a href="ObjectDeque.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Object<wbr/>Deque</span></a></li>
362
+ <li><a href="Pair.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Pair</span></a></li>
294
363
  <li><a href="PriorityQueue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Priority<wbr/>Queue</span></a></li>
295
364
  <li><a href="Queue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Queue</span></a></li>
296
365
  <li><a href="RBTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>RBTree</span></a></li>
@@ -301,8 +370,10 @@ property of the <code>SegmentTreeNode</code> object. It is not currently used in
301
370
  <li><a href="SkipLinkedList.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Skip<wbr/>Linked<wbr/>List</span></a></li>
302
371
  <li><a href="SplayTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Splay<wbr/>Tree</span></a></li>
303
372
  <li><a href="Stack.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Stack</span></a></li>
373
+ <li><a href="TreeMap.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Tree<wbr/>Map</span></a></li>
304
374
  <li><a href="TreeMultiSet.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Tree<wbr/>Multi<wbr/>Set</span></a></li>
305
375
  <li><a href="TreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Tree<wbr/>Node</span></a></li>
376
+ <li><a href="TreeSet.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Tree<wbr/>Set</span></a></li>
306
377
  <li><a href="Trie.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Trie</span></a></li>
307
378
  <li><a href="TrieNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Trie<wbr/>Node</span></a></li>
308
379
  <li><a href="TwoThreeTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Two<wbr/>Three<wbr/>Tree</span></a></li>
@@ -324,7 +395,6 @@ property of the <code>SegmentTreeNode</code> object. It is not currently used in
324
395
  <li><a href="../types/DFSOrderPattern.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>DFSOrder<wbr/>Pattern</span></a></li>
325
396
  <li><a href="../types/DijkstraResult.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Dijkstra<wbr/>Result</span></a></li>
326
397
  <li><a href="../types/Direction.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Direction</span></a></li>
327
- <li><a href="../types/DoublyLinkedListGetBy.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Doubly<wbr/>Linked<wbr/>List<wbr/>Get<wbr/>By</span></a></li>
328
398
  <li><a href="../types/NodeOrPropertyName.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Node<wbr/>Or<wbr/>Property<wbr/>Name</span></a></li>
329
399
  <li><a href="../types/PriorityQueueComparator.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Priority<wbr/>Queue<wbr/>Comparator</span></a></li>
330
400
  <li><a href="../types/PriorityQueueDFSOrderPattern.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Priority<wbr/>QueueDFSOrder<wbr/>Pattern</span></a></li>