data-structure-typed 1.18.6 → 1.18.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/dist/data-structures/binary-tree/abstract-binary-tree.d.ts +48 -24
  2. package/dist/data-structures/binary-tree/abstract-binary-tree.js +51 -26
  3. package/dist/data-structures/binary-tree/avl-tree.d.ts +5 -4
  4. package/dist/data-structures/binary-tree/avl-tree.js +5 -3
  5. package/dist/data-structures/binary-tree/binary-tree.d.ts +13 -3
  6. package/dist/data-structures/binary-tree/binary-tree.js +14 -5
  7. package/dist/data-structures/binary-tree/bst.d.ts +26 -5
  8. package/dist/data-structures/binary-tree/bst.js +26 -4
  9. package/dist/data-structures/binary-tree/rb-tree.d.ts +30 -1
  10. package/dist/data-structures/binary-tree/rb-tree.js +27 -14
  11. package/dist/data-structures/binary-tree/tree-multiset.d.ts +15 -4
  12. package/dist/data-structures/binary-tree/tree-multiset.js +15 -3
  13. package/dist/data-structures/graph/abstract-graph.d.ts +20 -21
  14. package/dist/data-structures/graph/abstract-graph.js +24 -19
  15. package/dist/data-structures/graph/directed-graph.d.ts +10 -9
  16. package/dist/data-structures/graph/directed-graph.js +18 -18
  17. package/dist/data-structures/graph/undirected-graph.d.ts +5 -11
  18. package/dist/data-structures/graph/undirected-graph.js +4 -17
  19. package/dist/data-structures/interfaces/abstract-binary-tree.d.ts +101 -0
  20. package/dist/data-structures/interfaces/abstract-binary-tree.js +2 -0
  21. package/dist/data-structures/interfaces/abstract-graph.d.ts +1 -4
  22. package/dist/data-structures/interfaces/avl-tree.d.ts +16 -1
  23. package/dist/data-structures/interfaces/binary-tree.d.ts +4 -24
  24. package/dist/data-structures/interfaces/bst.d.ts +18 -1
  25. package/dist/data-structures/interfaces/directed-graph.d.ts +4 -1
  26. package/dist/data-structures/interfaces/index.d.ts +1 -1
  27. package/dist/data-structures/interfaces/index.js +1 -1
  28. package/dist/data-structures/interfaces/rb-tree.d.ts +9 -0
  29. package/dist/data-structures/interfaces/rb-tree.js +2 -0
  30. package/dist/data-structures/interfaces/undirected-graph.d.ts +4 -1
  31. package/dist/data-structures/types/abstract-binary-tree.d.ts +2 -2
  32. package/dist/utils/utils.js +62 -0
  33. package/docs/assets/search.js +1 -1
  34. package/docs/classes/AVLTree.html +292 -180
  35. package/docs/classes/AVLTreeNode.html +126 -77
  36. package/docs/classes/AaTree.html +12 -6
  37. package/docs/classes/AbstractBinaryTree.html +258 -163
  38. package/docs/classes/AbstractBinaryTreeNode.html +117 -84
  39. package/docs/classes/AbstractEdge.html +22 -16
  40. package/docs/classes/AbstractGraph.html +137 -140
  41. package/docs/classes/AbstractVertex.html +19 -13
  42. package/docs/classes/ArrayDeque.html +25 -19
  43. package/docs/classes/BST.html +275 -174
  44. package/docs/classes/BSTNode.html +127 -77
  45. package/docs/classes/BTree.html +12 -6
  46. package/docs/classes/BinaryIndexedTree.html +20 -14
  47. package/docs/classes/BinaryTree.html +265 -169
  48. package/docs/classes/BinaryTreeNode.html +110 -61
  49. package/docs/classes/Character.html +15 -9
  50. package/docs/classes/CoordinateMap.html +20 -14
  51. package/docs/classes/CoordinateSet.html +19 -13
  52. package/docs/classes/Deque.html +45 -39
  53. package/docs/classes/DirectedEdge.html +26 -20
  54. package/docs/classes/DirectedGraph.html +189 -154
  55. package/docs/classes/DirectedVertex.html +17 -11
  56. package/docs/classes/DoublyLinkedList.html +48 -42
  57. package/docs/classes/DoublyLinkedListNode.html +22 -16
  58. package/docs/classes/HashTable.html +12 -6
  59. package/docs/classes/Heap.html +26 -20
  60. package/docs/classes/HeapItem.html +19 -13
  61. package/docs/classes/Matrix2D.html +27 -21
  62. package/docs/classes/MatrixNTI2D.html +15 -9
  63. package/docs/classes/MaxHeap.html +26 -20
  64. package/docs/classes/MaxPriorityQueue.html +45 -39
  65. package/docs/classes/MinHeap.html +26 -20
  66. package/docs/classes/MinPriorityQueue.html +45 -39
  67. package/docs/classes/Navigator.html +21 -15
  68. package/docs/classes/ObjectDeque.html +36 -30
  69. package/docs/classes/Pair.html +12 -6
  70. package/docs/classes/PriorityQueue.html +43 -37
  71. package/docs/classes/Queue.html +25 -19
  72. package/docs/classes/RBTree.html +2388 -0
  73. package/docs/classes/RBTreeNode.html +516 -0
  74. package/docs/classes/SegmentTree.html +28 -22
  75. package/docs/classes/SegmentTreeNode.html +31 -25
  76. package/docs/classes/SinglyLinkedList.html +45 -39
  77. package/docs/classes/SinglyLinkedListNode.html +19 -13
  78. package/docs/classes/SkipLinkedList.html +12 -6
  79. package/docs/classes/SplayTree.html +12 -6
  80. package/docs/classes/Stack.html +23 -17
  81. package/docs/classes/TreeMap.html +12 -6
  82. package/docs/classes/TreeMultiSet.html +273 -172
  83. package/docs/classes/TreeMultiSetNode.html +126 -77
  84. package/docs/classes/TreeNode.html +27 -21
  85. package/docs/classes/TreeSet.html +12 -6
  86. package/docs/classes/Trie.html +24 -18
  87. package/docs/classes/TrieNode.html +22 -16
  88. package/docs/classes/TwoThreeTree.html +12 -6
  89. package/docs/classes/UndirectedEdge.html +23 -17
  90. package/docs/classes/UndirectedGraph.html +160 -146
  91. package/docs/classes/UndirectedVertex.html +17 -11
  92. package/docs/classes/Vector2D.html +39 -33
  93. package/docs/enums/CP.html +15 -9
  94. package/docs/enums/FamilyPosition.html +15 -9
  95. package/docs/enums/LoopType.html +14 -8
  96. package/docs/enums/RBColor.html +14 -8
  97. package/docs/enums/TopologicalProperty.html +15 -9
  98. package/docs/index.html +11 -5
  99. package/docs/interfaces/IAVLTree.html +1378 -0
  100. package/docs/interfaces/IAVLTreeNode.html +405 -0
  101. package/docs/interfaces/IAbstractBinaryTree.html +1124 -0
  102. package/docs/interfaces/{IBinaryTreeNode.html → IAbstractBinaryTreeNode.html} +61 -73
  103. package/docs/interfaces/{IGraph.html → IAbstractGraph.html} +52 -90
  104. package/docs/interfaces/IBST.html +1271 -0
  105. package/docs/interfaces/IBSTNode.html +408 -0
  106. package/docs/interfaces/IDirectedGraph.html +329 -16
  107. package/docs/interfaces/IUNDirectedGraph.html +322 -8
  108. package/docs/modules.html +22 -10
  109. package/docs/types/AVLTreeOptions.html +12 -6
  110. package/docs/types/{AbstractResultsByProperty.html → AbstractBinaryTreeNodeProperties.html} +16 -10
  111. package/docs/types/{AbstractResultByProperty.html → AbstractBinaryTreeNodeProperty.html} +16 -10
  112. package/docs/types/AbstractBinaryTreeOptions.html +12 -6
  113. package/docs/types/AbstractRecursiveBinaryTreeNode.html +12 -6
  114. package/docs/types/BSTComparator.html +12 -6
  115. package/docs/types/BSTOptions.html +12 -6
  116. package/docs/types/BinaryTreeDeletedResult.html +12 -6
  117. package/docs/types/BinaryTreeNodeId.html +12 -6
  118. package/docs/types/BinaryTreeNodePropertyName.html +12 -6
  119. package/docs/types/BinaryTreeOptions.html +12 -6
  120. package/docs/types/DFSOrderPattern.html +12 -6
  121. package/docs/types/DijkstraResult.html +12 -6
  122. package/docs/types/Direction.html +12 -6
  123. package/docs/types/EdgeId.html +12 -6
  124. package/docs/types/HeapOptions.html +12 -6
  125. package/docs/types/IdObject.html +12 -6
  126. package/docs/types/KeyValObject.html +12 -6
  127. package/docs/types/NavigatorParams.html +12 -6
  128. package/docs/types/NodeOrPropertyName.html +12 -6
  129. package/docs/types/PriorityQueueComparator.html +12 -6
  130. package/docs/types/PriorityQueueDFSOrderPattern.html +12 -6
  131. package/docs/types/PriorityQueueOptions.html +12 -6
  132. package/docs/types/RBTreeOptions.html +12 -6
  133. package/docs/types/RecursiveAVLTreeNode.html +12 -6
  134. package/docs/types/RecursiveBSTNode.html +12 -6
  135. package/docs/types/RecursiveBinaryTreeNode.html +12 -6
  136. package/docs/types/RecursiveTreeMultiSetNode.html +12 -6
  137. package/docs/types/SegmentTreeNodeVal.html +12 -6
  138. package/docs/types/TopologicalStatus.html +12 -6
  139. package/docs/types/TreeMultiSetOptions.html +12 -6
  140. package/docs/types/Turning.html +12 -6
  141. package/docs/types/VertexId.html +12 -6
  142. package/package.json +2 -2
  143. package/docs/interfaces/IBinaryTree.html +0 -189
@@ -27,9 +27,13 @@
27
27
  <ul class="tsd-hierarchy">
28
28
  <li><a href="AbstractGraph.html" class="tsd-signature-type tsd-kind-class">AbstractGraph</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">&gt;</span>
29
29
  <ul class="tsd-hierarchy">
30
- <li><span class="target">UndirectedGraph</span></li></ul></li></ul></section><aside class="tsd-sources">
30
+ <li><span class="target">UndirectedGraph</span></li></ul></li></ul></section>
31
+ <section class="tsd-panel">
32
+ <h4>Implements</h4>
33
+ <ul class="tsd-hierarchy">
34
+ <li><a href="../interfaces/IUNDirectedGraph.html" class="tsd-signature-type tsd-kind-interface">IUNDirectedGraph</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">&gt;</span></li></ul></section><aside class="tsd-sources">
31
35
  <ul>
32
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L61">src/data-structures/graph/undirected-graph.ts:61</a></li></ul></aside>
36
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L53">src/data-structures/graph/undirected-graph.ts:53</a></li></ul></aside>
33
37
  <section class="tsd-panel-group tsd-index-group">
34
38
  <section class="tsd-panel tsd-index-panel">
35
39
  <details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
@@ -50,10 +54,8 @@
50
54
  </div></section>
51
55
  <section class="tsd-index-section">
52
56
  <h3 class="tsd-index-heading">Methods</h3>
53
- <div class="tsd-index-list"><a href="UndirectedGraph.html#_createEdge" 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>_create<wbr/>Edge</span></a>
54
- <a href="UndirectedGraph.html#_createVertex" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_create<wbr/>Vertex</span></a>
55
- <a href="UndirectedGraph.html#_getVertex" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Vertex</span></a>
56
- <a href="UndirectedGraph.html#_getVertexId" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Vertex<wbr/>Id</span></a>
57
+ <div class="tsd-index-list"><a href="UndirectedGraph.html#_getVertex" class="tsd-index-link tsd-is-protected tsd-is-inherited"><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>_get<wbr/>Vertex</span></a>
58
+ <a href="UndirectedGraph.html#_getVertexId" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Vertex<wbr/>Id</span></a>
57
59
  <a href="UndirectedGraph.html#_setEdges" 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/>Edges</span></a>
58
60
  <a href="UndirectedGraph.html#_setVertices" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Vertices</span></a>
59
61
  <a href="UndirectedGraph.html#addEdge" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>add<wbr/>Edge</span></a>
@@ -61,6 +63,8 @@
61
63
  <a href="UndirectedGraph.html#bellmanFord" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>bellman<wbr/>Ford</span></a>
62
64
  <a href="UndirectedGraph.html#createAddEdge" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Add<wbr/>Edge</span></a>
63
65
  <a href="UndirectedGraph.html#createAddVertex" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Add<wbr/>Vertex</span></a>
66
+ <a href="UndirectedGraph.html#createEdge" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Edge</span></a>
67
+ <a href="UndirectedGraph.html#createVertex" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Vertex</span></a>
64
68
  <a href="UndirectedGraph.html#degreeOf" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>degree<wbr/>Of</span></a>
65
69
  <a href="UndirectedGraph.html#dijkstra" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>dijkstra</span></a>
66
70
  <a href="UndirectedGraph.html#dijkstraWithoutHeap" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>dijkstra<wbr/>Without<wbr/>Heap</span></a>
@@ -69,7 +73,6 @@
69
73
  <a href="UndirectedGraph.html#floyd" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>floyd</span></a>
70
74
  <a href="UndirectedGraph.html#getAllPathsBetween" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>All<wbr/>Paths<wbr/>Between</span></a>
71
75
  <a href="UndirectedGraph.html#getEdge" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Edge</span></a>
72
- <a href="UndirectedGraph.html#getEdgesOf" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Edges<wbr/>Of</span></a>
73
76
  <a href="UndirectedGraph.html#getEndsOfEdge" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Ends<wbr/>Of<wbr/>Edge</span></a>
74
77
  <a href="UndirectedGraph.html#getMinCostBetween" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Min<wbr/>Cost<wbr/>Between</span></a>
75
78
  <a href="UndirectedGraph.html#getMinPathBetween" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Min<wbr/>Path<wbr/>Between</span></a>
@@ -96,20 +99,20 @@
96
99
  <h4>Type Parameters</h4>
97
100
  <ul class="tsd-type-parameter-list">
98
101
  <li>
99
- <h4><span class="tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol"> extends </span><a href="UndirectedVertex.html" class="tsd-signature-type tsd-kind-class">UndirectedVertex</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span> = <a href="UndirectedVertex.html" class="tsd-signature-type tsd-kind-class">UndirectedVertex</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span></h4></li>
102
+ <h4><span class="tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol"> extends </span><a href="UndirectedVertex.html" class="tsd-signature-type tsd-kind-class">UndirectedVertex</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">&gt;</span> = <a href="UndirectedVertex.html" class="tsd-signature-type tsd-kind-class">UndirectedVertex</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span></h4></li>
100
103
  <li>
101
- <h4><span class="tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol"> extends </span><a href="UndirectedEdge.html" class="tsd-signature-type tsd-kind-class">UndirectedEdge</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span> = <a href="UndirectedEdge.html" class="tsd-signature-type tsd-kind-class">UndirectedEdge</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section>
104
+ <h4><span class="tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol"> extends </span><a href="UndirectedEdge.html" class="tsd-signature-type tsd-kind-class">UndirectedEdge</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">&gt;</span> = <a href="UndirectedEdge.html" class="tsd-signature-type tsd-kind-class">UndirectedEdge</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section>
102
105
  <h4 class="tsd-returns-title">Returns <a href="UndirectedGraph.html" class="tsd-signature-type tsd-kind-class">UndirectedGraph</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
103
106
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#constructor">constructor</a></p>
104
107
  <ul>
105
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L63">src/data-structures/graph/undirected-graph.ts:63</a></li></ul></aside></li></ul></section></section>
108
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L55">src/data-structures/graph/undirected-graph.ts:55</a></li></ul></aside></li></ul></section></section>
106
109
  <section class="tsd-panel-group tsd-member-group">
107
110
  <h2>Properties</h2>
108
111
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_edges" class="tsd-anchor"></a>
109
112
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_edges</span><a href="#_edges" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
110
113
  <div class="tsd-signature"><span class="tsd-kind-property">_edges</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type ">Map</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources">
111
114
  <ul>
112
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L68">src/data-structures/graph/undirected-graph.ts:68</a></li></ul></aside></section></section>
115
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L60">src/data-structures/graph/undirected-graph.ts:60</a></li></ul></aside></section></section>
113
116
  <section class="tsd-panel-group tsd-member-group">
114
117
  <h2>Accessors</h2>
115
118
  <section class="tsd-panel tsd-member"><a id="edges" class="tsd-anchor"></a>
@@ -119,7 +122,7 @@
119
122
  <li class="tsd-description">
120
123
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Map</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
121
124
  <ul>
122
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L70">src/data-structures/graph/undirected-graph.ts:70</a></li></ul></aside></li></ul></section>
125
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L62">src/data-structures/graph/undirected-graph.ts:62</a></li></ul></aside></li></ul></section>
123
126
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="vertices" class="tsd-anchor"></a>
124
127
  <h3 class="tsd-anchor-link"><span>vertices</span><a href="#vertices" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
125
128
  <ul class="tsd-signatures tsd-is-inherited">
@@ -128,99 +131,48 @@
128
131
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Map</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
129
132
  <p>Inherited from AbstractGraph.vertices</p>
130
133
  <ul>
131
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L102">src/data-structures/graph/abstract-graph.ts:102</a></li></ul></aside></li></ul></section></section>
134
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L102">src/data-structures/graph/abstract-graph.ts:102</a></li></ul></aside></li></ul></section></section>
132
135
  <section class="tsd-panel-group tsd-member-group">
133
136
  <h2>Methods</h2>
134
- <section class="tsd-panel tsd-member"><a id="_createEdge" class="tsd-anchor"></a>
135
- <h3 class="tsd-anchor-link"><span>_create<wbr/>Edge</span><a href="#_createEdge" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
136
- <ul class="tsd-signatures">
137
- <li class="tsd-signature tsd-anchor-link" id="_createEdge._createEdge-1"><span class="tsd-kind-call-signature">_create<wbr/>Edge</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">v1</span>, <span class="tsd-kind-parameter">v2</span>, <span class="tsd-kind-parameter">weight</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">val</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">E</span><a href="#_createEdge._createEdge-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
138
- <li class="tsd-description">
139
- <div class="tsd-comment tsd-typography"><p>The function _createEdge creates an undirected edge between two vertices with an optional weight and value.</p>
140
- </div>
141
- <div class="tsd-parameters">
142
- <h4 class="tsd-parameters-title">Parameters</h4>
143
- <ul class="tsd-parameter-list">
144
- <li>
145
- <h5><span class="tsd-kind-parameter">v1</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a></h5>
146
- <div class="tsd-comment tsd-typography"><p>The parameter <code>v1</code> represents the first vertex of the edge. It is of type <code>VertexId</code>, which
147
- could be a unique identifier or label for the vertex.</p>
148
- </div>
149
- <div class="tsd-comment tsd-typography"></div></li>
150
- <li>
151
- <h5><span class="tsd-kind-parameter">v2</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a></h5>
152
- <div class="tsd-comment tsd-typography"><p>The parameter <code>v2</code> represents the second vertex of the edge. It is of type <code>VertexId</code>, which
153
- is typically a unique identifier for a vertex in a graph.</p>
154
- </div>
155
- <div class="tsd-comment tsd-typography"></div></li>
156
- <li>
157
- <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">weight</span>: <span class="tsd-signature-type">number</span></h5>
158
- <div class="tsd-comment tsd-typography"><p>The weight parameter is an optional number that represents the weight of the edge. If no
159
- weight is provided, the default value is 1.</p>
160
- </div>
161
- <div class="tsd-comment tsd-typography"></div></li>
162
- <li>
163
- <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span></h5>
164
- <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter is an optional value that can be assigned to the edge. It can be of any type and
165
- is used to store additional information or data associated with the edge.</p>
166
- </div>
167
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
168
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">E</span></h4><p>an instance of the UndirectedEdge class, casted as type E.</p>
169
-
170
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
171
- <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#_createEdge">_createEdge</a></p>
172
- <ul>
173
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L97">src/data-structures/graph/undirected-graph.ts:97</a></li></ul></aside></li></ul></section>
174
- <section class="tsd-panel tsd-member"><a id="_createVertex" class="tsd-anchor"></a>
175
- <h3 class="tsd-anchor-link"><span>_create<wbr/>Vertex</span><a href="#_createVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
176
- <ul class="tsd-signatures">
177
- <li class="tsd-signature tsd-anchor-link" id="_createVertex._createVertex-1"><span class="tsd-kind-call-signature">_create<wbr/>Vertex</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">id</span>, <span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><a href="#_createVertex._createVertex-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
178
- <li class="tsd-description">
179
- <div class="tsd-comment tsd-typography"><p>In TypeScript, a subclass inherits the interface implementation of its parent class, without needing to implement the same interface again in the subclass. This behavior differs from Java&#39;s approach. In Java, if a parent class implements an interface, the subclass needs to explicitly implement the same interface, even if the parent class has already implemented it.
180
- This means that using abstract methods in the parent class cannot constrain the grandchild classes. Defining methods within an interface also cannot constrain the descendant classes. When inheriting from this class, developers need to be aware that this method needs to be overridden.</p>
181
- </div>
182
- <div class="tsd-parameters">
183
- <h4 class="tsd-parameters-title">Parameters</h4>
184
- <ul class="tsd-parameter-list">
185
- <li>
186
- <h5><span class="tsd-kind-parameter">id</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a></h5>
187
- <div class="tsd-comment tsd-typography"></div></li>
188
- <li>
189
- <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span></h5>
190
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
191
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">V</span></h4>
192
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
193
- <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#_createVertex">_createVertex</a></p>
194
- <ul>
195
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L80">src/data-structures/graph/undirected-graph.ts:80</a></li></ul></aside></li></ul></section>
196
- <section class="tsd-panel tsd-member tsd-is-inherited"><a id="_getVertex" class="tsd-anchor"></a>
197
- <h3 class="tsd-anchor-link"><span>_get<wbr/>Vertex</span><a href="#_getVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
198
- <ul class="tsd-signatures tsd-is-inherited">
137
+ <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_getVertex" class="tsd-anchor"></a>
138
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_get<wbr/>Vertex</span><a href="#_getVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
139
+ <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
199
140
  <li class="tsd-signature tsd-anchor-link" id="_getVertex._getVertex-1"><span class="tsd-kind-call-signature">_get<wbr/>Vertex</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">vertexOrId</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">V</span><a href="#_getVertex._getVertex-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
200
141
  <li class="tsd-description">
142
+ <div class="tsd-comment tsd-typography"><p>BellmanFord time:O(VE) space:O(V)
143
+ one to rest pairs
144
+ The Bellman-Ford algorithm is also used to find the shortest paths from a source node to all other nodes in a graph. Unlike Dijkstra&#39;s algorithm, it can handle edge weights that are negative. Its basic idea involves iterative relaxation of all edges for several rounds to gradually approximate the shortest paths. Due to its ability to handle negative-weight edges, the Bellman-Ford algorithm is more flexible in some scenarios.
145
+ The <code>bellmanFord</code> function implements the Bellman-Ford algorithm to find the shortest path from a source vertex to</p>
146
+ </div>
201
147
  <div class="tsd-parameters">
202
148
  <h4 class="tsd-parameters-title">Parameters</h4>
203
149
  <ul class="tsd-parameter-list">
204
150
  <li>
205
151
  <h5><span class="tsd-kind-parameter">vertexOrId</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">V</span></h5></li></ul></div>
206
- <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">V</span></h4><aside class="tsd-sources">
152
+ <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">V</span></h4>
153
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
207
154
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#_getVertex">_getVertex</a></p>
208
155
  <ul>
209
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L128">src/data-structures/graph/abstract-graph.ts:128</a></li></ul></aside></li></ul></section>
210
- <section class="tsd-panel tsd-member tsd-is-inherited"><a id="_getVertexId" class="tsd-anchor"></a>
211
- <h3 class="tsd-anchor-link"><span>_get<wbr/>Vertex<wbr/>Id</span><a href="#_getVertexId" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
212
- <ul class="tsd-signatures tsd-is-inherited">
156
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L955">src/data-structures/graph/abstract-graph.ts:955</a></li></ul></aside></li></ul></section>
157
+ <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_getVertexId" class="tsd-anchor"></a>
158
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_get<wbr/>Vertex<wbr/>Id</span><a href="#_getVertexId" 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 tsd-is-protected tsd-is-inherited">
213
160
  <li class="tsd-signature tsd-anchor-link" id="_getVertexId._getVertexId-1"><span class="tsd-kind-call-signature">_get<wbr/>Vertex<wbr/>Id</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">vertexOrId</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a><a href="#_getVertexId._getVertexId-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
214
161
  <li class="tsd-description">
162
+ <div class="tsd-comment tsd-typography"><p>Floyd algorithm time: O(V^3) space: O(V^2), not support graph with negative weight cycle
163
+ all pairs
164
+ The Floyd-Warshall algorithm is used to find the shortest paths between all pairs of nodes in a graph. It employs dynamic programming to compute the shortest paths from any node to any other node. The Floyd-Warshall algorithm&#39;s advantage lies in its ability to handle graphs with negative-weight edges, and it can simultaneously compute shortest paths between any two nodes.</p>
165
+ </div>
215
166
  <div class="tsd-parameters">
216
167
  <h4 class="tsd-parameters-title">Parameters</h4>
217
168
  <ul class="tsd-parameter-list">
218
169
  <li>
219
170
  <h5><span class="tsd-kind-parameter">vertexOrId</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">V</span></h5></li></ul></div>
220
- <h4 class="tsd-returns-title">Returns <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a></h4><aside class="tsd-sources">
171
+ <h4 class="tsd-returns-title">Returns <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a></h4>
172
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
221
173
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#_getVertexId">_getVertexId</a></p>
222
174
  <ul>
223
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L137">src/data-structures/graph/abstract-graph.ts:137</a></li></ul></aside></li></ul></section>
175
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L966">src/data-structures/graph/abstract-graph.ts:966</a></li></ul></aside></li></ul></section>
224
176
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="_setEdges" class="tsd-anchor"></a>
225
177
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Edges</span><a href="#_setEdges" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
226
178
  <ul class="tsd-signatures tsd-is-protected">
@@ -233,7 +185,7 @@ This means that using abstract methods in the parent class cannot constrain the
233
185
  <h5><span class="tsd-kind-parameter">v</span>: <span class="tsd-signature-type ">Map</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
234
186
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
235
187
  <ul>
236
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L289">src/data-structures/graph/undirected-graph.ts:289</a></li></ul></aside></li></ul></section>
188
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L268">src/data-structures/graph/undirected-graph.ts:268</a></li></ul></aside></li></ul></section>
237
189
  <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><a id="_setVertices" class="tsd-anchor"></a>
238
190
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_set<wbr/>Vertices</span><a href="#_setVertices" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
239
191
  <ul class="tsd-signatures tsd-is-protected tsd-is-inherited">
@@ -250,7 +202,7 @@ This means that using abstract methods in the parent class cannot constrain the
250
202
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
251
203
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#_setVertices">_setVertices</a></p>
252
204
  <ul>
253
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L975">src/data-structures/graph/abstract-graph.ts:975</a></li></ul></aside></li></ul></section>
205
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L972">src/data-structures/graph/abstract-graph.ts:972</a></li></ul></aside></li></ul></section>
254
206
  <section class="tsd-panel tsd-member"><a id="addEdge" class="tsd-anchor"></a>
255
207
  <h3 class="tsd-anchor-link"><span>add<wbr/>Edge</span><a href="#addEdge" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
256
208
  <ul class="tsd-signatures">
@@ -270,9 +222,10 @@ array of two vertices connected by the edge.</p>
270
222
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>a boolean value.</p>
271
223
 
272
224
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
225
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#addEdge">addEdge</a></p>
273
226
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#addEdge">addEdge</a></p>
274
227
  <ul>
275
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L131">src/data-structures/graph/undirected-graph.ts:131</a></li></ul></aside></li></ul></section>
228
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L123">src/data-structures/graph/undirected-graph.ts:123</a></li></ul></aside></li></ul></section>
276
229
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="addVertex" class="tsd-anchor"></a>
277
230
  <h3 class="tsd-anchor-link"><span>add<wbr/>Vertex</span><a href="#addVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
278
231
  <ul class="tsd-signatures tsd-is-inherited">
@@ -284,9 +237,10 @@ array of two vertices connected by the edge.</p>
284
237
  <li>
285
238
  <h5><span class="tsd-kind-parameter">newVertex</span>: <span class="tsd-signature-type tsd-kind-type-parameter">V</span></h5></li></ul></div>
286
239
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
240
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#addVertex">addVertex</a></p>
287
241
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#addVertex">addVertex</a></p>
288
242
  <ul>
289
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L158">src/data-structures/graph/abstract-graph.ts:158</a></li></ul></aside></li></ul></section>
243
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L147">src/data-structures/graph/abstract-graph.ts:147</a></li></ul></aside></li></ul></section>
290
244
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="bellmanFord" class="tsd-anchor"></a>
291
245
  <h3 class="tsd-anchor-link"><span>bellman<wbr/>Ford</span><a href="#bellmanFord" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
292
246
  <ul class="tsd-signatures tsd-is-inherited">
@@ -343,7 +297,7 @@ vertex.</p>
343
297
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
344
298
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#bellmanFord">bellmanFord</a></p>
345
299
  <ul>
346
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L700">src/data-structures/graph/abstract-graph.ts:700</a></li></ul></aside></li></ul></section>
300
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L683">src/data-structures/graph/abstract-graph.ts:683</a></li></ul></aside></li></ul></section>
347
301
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="createAddEdge" class="tsd-anchor"></a>
348
302
  <h3 class="tsd-anchor-link"><span>create<wbr/>Add<wbr/>Edge</span><a href="#createAddEdge" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
349
303
  <ul class="tsd-signatures tsd-is-inherited">
@@ -361,9 +315,10 @@ vertex.</p>
361
315
  <li>
362
316
  <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span></h5></li></ul></div>
363
317
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
318
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#createAddEdge">createAddEdge</a></p>
364
319
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#createAddEdge">createAddEdge</a></p>
365
320
  <ul>
366
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L213">src/data-structures/graph/abstract-graph.ts:213</a></li></ul></aside></li></ul></section>
321
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L202">src/data-structures/graph/abstract-graph.ts:202</a></li></ul></aside></li></ul></section>
367
322
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="createAddVertex" class="tsd-anchor"></a>
368
323
  <h3 class="tsd-anchor-link"><span>create<wbr/>Add<wbr/>Vertex</span><a href="#createAddVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
369
324
  <ul class="tsd-signatures tsd-is-inherited">
@@ -377,9 +332,72 @@ vertex.</p>
377
332
  <li>
378
333
  <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span></h5></li></ul></div>
379
334
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
335
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#createAddVertex">createAddVertex</a></p>
380
336
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#createAddVertex">createAddVertex</a></p>
381
337
  <ul>
382
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L153">src/data-structures/graph/abstract-graph.ts:153</a></li></ul></aside></li></ul></section>
338
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L142">src/data-structures/graph/abstract-graph.ts:142</a></li></ul></aside></li></ul></section>
339
+ <section class="tsd-panel tsd-member"><a id="createEdge" class="tsd-anchor"></a>
340
+ <h3 class="tsd-anchor-link"><span>create<wbr/>Edge</span><a href="#createEdge" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
341
+ <ul class="tsd-signatures">
342
+ <li class="tsd-signature tsd-anchor-link" id="createEdge.createEdge-1"><span class="tsd-kind-call-signature">create<wbr/>Edge</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">v1</span>, <span class="tsd-kind-parameter">v2</span>, <span class="tsd-kind-parameter">weight</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">val</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">E</span><a href="#createEdge.createEdge-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
343
+ <li class="tsd-description">
344
+ <div class="tsd-comment tsd-typography"><p>The function createEdge creates an undirected edge between two vertices with an optional weight and value.</p>
345
+ </div>
346
+ <div class="tsd-parameters">
347
+ <h4 class="tsd-parameters-title">Parameters</h4>
348
+ <ul class="tsd-parameter-list">
349
+ <li>
350
+ <h5><span class="tsd-kind-parameter">v1</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a></h5>
351
+ <div class="tsd-comment tsd-typography"><p>The parameter <code>v1</code> represents the first vertex of the edge. It is of type <code>VertexId</code>, which
352
+ could be a unique identifier or label for the vertex.</p>
353
+ </div>
354
+ <div class="tsd-comment tsd-typography"></div></li>
355
+ <li>
356
+ <h5><span class="tsd-kind-parameter">v2</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a></h5>
357
+ <div class="tsd-comment tsd-typography"><p>The parameter <code>v2</code> represents the second vertex of the edge. It is of type <code>VertexId</code>, which
358
+ is typically a unique identifier for a vertex in a graph.</p>
359
+ </div>
360
+ <div class="tsd-comment tsd-typography"></div></li>
361
+ <li>
362
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">weight</span>: <span class="tsd-signature-type">number</span></h5>
363
+ <div class="tsd-comment tsd-typography"><p>The weight parameter is an optional number that represents the weight of the edge. If no
364
+ weight is provided, the default value is 1.</p>
365
+ </div>
366
+ <div class="tsd-comment tsd-typography"></div></li>
367
+ <li>
368
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span></h5>
369
+ <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter is an optional value that can be assigned to the edge. It can be of any type and
370
+ is used to store additional information or data associated with the edge.</p>
371
+ </div>
372
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
373
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">E</span></h4><p>an instance of the UndirectedEdge class, casted as type E.</p>
374
+
375
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
376
+ <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#createEdge">createEdge</a></p>
377
+ <ul>
378
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L89">src/data-structures/graph/undirected-graph.ts:89</a></li></ul></aside></li></ul></section>
379
+ <section class="tsd-panel tsd-member"><a id="createVertex" class="tsd-anchor"></a>
380
+ <h3 class="tsd-anchor-link"><span>create<wbr/>Vertex</span><a href="#createVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
381
+ <ul class="tsd-signatures">
382
+ <li class="tsd-signature tsd-anchor-link" id="createVertex.createVertex-1"><span class="tsd-kind-call-signature">create<wbr/>Vertex</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">id</span>, <span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">V</span><a href="#createVertex.createVertex-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
383
+ <li class="tsd-description">
384
+ <div class="tsd-comment tsd-typography"><p>In TypeScript, a subclass inherits the interface implementation of its parent class, without needing to implement the same interface again in the subclass. This behavior differs from Java&#39;s approach. In Java, if a parent class implements an interface, the subclass needs to explicitly implement the same interface, even if the parent class has already implemented it.
385
+ This means that using abstract methods in the parent class cannot constrain the grandchild classes. Defining methods within an interface also cannot constrain the descendant classes. When inheriting from this class, developers need to be aware that this method needs to be overridden.</p>
386
+ </div>
387
+ <div class="tsd-parameters">
388
+ <h4 class="tsd-parameters-title">Parameters</h4>
389
+ <ul class="tsd-parameter-list">
390
+ <li>
391
+ <h5><span class="tsd-kind-parameter">id</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a></h5>
392
+ <div class="tsd-comment tsd-typography"></div></li>
393
+ <li>
394
+ <h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">&quot;val&quot;</span><span class="tsd-signature-symbol">]</span></h5>
395
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
396
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">V</span></h4>
397
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
398
+ <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#createVertex">createVertex</a></p>
399
+ <ul>
400
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L72">src/data-structures/graph/undirected-graph.ts:72</a></li></ul></aside></li></ul></section>
383
401
  <section class="tsd-panel tsd-member"><a id="degreeOf" class="tsd-anchor"></a>
384
402
  <h3 class="tsd-anchor-link"><span>degree<wbr/>Of</span><a href="#degreeOf" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
385
403
  <ul class="tsd-signatures">
@@ -399,9 +417,10 @@ vertex.</p>
399
417
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>the degree of the vertex.</p>
400
418
 
401
419
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
420
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#degreeOf">degreeOf</a></p>
402
421
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#degreeOf">degreeOf</a></p>
403
422
  <ul>
404
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L195">src/data-structures/graph/undirected-graph.ts:195</a></li></ul></aside></li></ul></section>
423
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L187">src/data-structures/graph/undirected-graph.ts:187</a></li></ul></aside></li></ul></section>
405
424
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="dijkstra" class="tsd-anchor"></a>
406
425
  <h3 class="tsd-anchor-link"><span>dijkstra</span><a href="#dijkstra" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
407
426
  <ul class="tsd-signatures tsd-is-inherited">
@@ -446,7 +465,7 @@ shortest paths from the source vertex to all other vertices in the graph. If <co
446
465
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
447
466
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#dijkstra">dijkstra</a></p>
448
467
  <ul>
449
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L564">src/data-structures/graph/abstract-graph.ts:564</a></li></ul></aside></li></ul></section>
468
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L553">src/data-structures/graph/abstract-graph.ts:553</a></li></ul></aside></li></ul></section>
450
469
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="dijkstraWithoutHeap" class="tsd-anchor"></a>
451
470
  <h3 class="tsd-anchor-link"><span>dijkstra<wbr/>Without<wbr/>Heap</span><a href="#dijkstraWithoutHeap" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
452
471
  <ul class="tsd-signatures tsd-is-inherited">
@@ -490,7 +509,7 @@ shortest paths from the source vertex to all other vertices in the graph. If <co
490
509
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
491
510
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#dijkstraWithoutHeap">dijkstraWithoutHeap</a></p>
492
511
  <ul>
493
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L437">src/data-structures/graph/abstract-graph.ts:437</a></li></ul></aside></li></ul></section>
512
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L426">src/data-structures/graph/abstract-graph.ts:426</a></li></ul></aside></li></ul></section>
494
513
  <section class="tsd-panel tsd-member"><a id="edgeSet" class="tsd-anchor"></a>
495
514
  <h3 class="tsd-anchor-link"><span>edge<wbr/>Set</span><a href="#edgeSet" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
496
515
  <ul class="tsd-signatures">
@@ -501,9 +520,10 @@ shortest paths from the source vertex to all other vertices in the graph. If <co
501
520
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[]</span></h4><p>The method <code>edgeSet()</code> returns an array of <code>E</code> objects.</p>
502
521
 
503
522
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
523
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#edgeSet">edgeSet</a></p>
504
524
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#edgeSet">edgeSet</a></p>
505
525
  <ul>
506
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L223">src/data-structures/graph/undirected-graph.ts:223</a></li></ul></aside></li></ul></section>
526
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L215">src/data-structures/graph/undirected-graph.ts:215</a></li></ul></aside></li></ul></section>
507
527
  <section class="tsd-panel tsd-member"><a id="edgesOf" class="tsd-anchor"></a>
508
528
  <h3 class="tsd-anchor-link"><span>edges<wbr/>Of</span><a href="#edgesOf" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
509
529
  <ul class="tsd-signatures">
@@ -523,9 +543,10 @@ shortest paths from the source vertex to all other vertices in the graph. If <co
523
543
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[]</span></h4><p>an array of UndirectedEdge objects.</p>
524
544
 
525
545
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
546
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#edgesOf">edgesOf</a></p>
526
547
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#edgesOf">edgesOf</a></p>
527
548
  <ul>
528
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L210">src/data-structures/graph/undirected-graph.ts:210</a></li></ul></aside></li></ul></section>
549
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L202">src/data-structures/graph/undirected-graph.ts:202</a></li></ul></aside></li></ul></section>
529
550
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="floyd" class="tsd-anchor"></a>
530
551
  <h3 class="tsd-anchor-link"><span>floyd</span><a href="#floyd" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
531
552
  <ul class="tsd-signatures tsd-is-inherited">
@@ -550,7 +571,7 @@ path between vertices in the</p>
550
571
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
551
572
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#floyd">floyd</a></p>
552
573
  <ul>
553
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L806">src/data-structures/graph/abstract-graph.ts:806</a></li></ul></aside></li></ul></section>
574
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L788">src/data-structures/graph/abstract-graph.ts:788</a></li></ul></aside></li></ul></section>
554
575
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getAllPathsBetween" class="tsd-anchor"></a>
555
576
  <h3 class="tsd-anchor-link"><span>get<wbr/>All<wbr/>Paths<wbr/>Between</span><a href="#getAllPathsBetween" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
556
577
  <ul class="tsd-signatures tsd-is-inherited">
@@ -579,7 +600,7 @@ and v2).</p>
579
600
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
580
601
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#getAllPathsBetween">getAllPathsBetween</a></p>
581
602
  <ul>
582
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L254">src/data-structures/graph/abstract-graph.ts:254</a></li></ul></aside></li></ul></section>
603
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L243">src/data-structures/graph/abstract-graph.ts:243</a></li></ul></aside></li></ul></section>
583
604
  <section class="tsd-panel tsd-member"><a id="getEdge" class="tsd-anchor"></a>
584
605
  <h3 class="tsd-anchor-link"><span>get<wbr/>Edge</span><a href="#getEdge" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
585
606
  <ul class="tsd-signatures">
@@ -606,30 +627,10 @@ object or a <code>VertexId</code> (identifier) of an undirected vertex.</p>
606
627
  <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">E</span></h4><p>an instance of <code>E</code> or <code>null</code>.</p>
607
628
 
608
629
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
630
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#getEdge">getEdge</a></p>
609
631
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#getEdge">getEdge</a></p>
610
632
  <ul>
611
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L110">src/data-structures/graph/undirected-graph.ts:110</a></li></ul></aside></li></ul></section>
612
- <section class="tsd-panel tsd-member"><a id="getEdgesOf" class="tsd-anchor"></a>
613
- <h3 class="tsd-anchor-link"><span>get<wbr/>Edges<wbr/>Of</span><a href="#getEdgesOf" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
614
- <ul class="tsd-signatures">
615
- <li class="tsd-signature tsd-anchor-link" id="getEdgesOf.getEdgesOf-1"><span class="tsd-kind-call-signature">get<wbr/>Edges<wbr/>Of</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">vertexOrId</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[]</span><a href="#getEdgesOf.getEdgesOf-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
616
- <li class="tsd-description">
617
- <div class="tsd-comment tsd-typography"><p>The function &quot;getEdgesOf&quot; returns an array of undirected edges connected to a given vertex or vertex ID.</p>
618
- </div>
619
- <div class="tsd-parameters">
620
- <h4 class="tsd-parameters-title">Parameters</h4>
621
- <ul class="tsd-parameter-list">
622
- <li>
623
- <h5><span class="tsd-kind-parameter">vertexOrId</span>: <a href="../types/VertexId.html" class="tsd-signature-type tsd-kind-type-alias">VertexId</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">V</span></h5>
624
- <div class="tsd-comment tsd-typography"><p>The parameter <code>vertexOrId</code> can be either an
625
- <code>V</code> object or a <code>VertexId</code>.</p>
626
- </div>
627
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
628
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">E</span><span class="tsd-signature-symbol">[]</span></h4><p>The function <code>getEdgesOf</code> returns an array of <code>E</code> objects.</p>
629
-
630
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
631
- <ul>
632
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L239">src/data-structures/graph/undirected-graph.ts:239</a></li></ul></aside></li></ul></section>
633
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L102">src/data-structures/graph/undirected-graph.ts:102</a></li></ul></aside></li></ul></section>
633
634
  <section class="tsd-panel tsd-member"><a id="getEndsOfEdge" class="tsd-anchor"></a>
634
635
  <h3 class="tsd-anchor-link"><span>get<wbr/>Ends<wbr/>Of<wbr/>Edge</span><a href="#getEndsOfEdge" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
635
636
  <ul class="tsd-signatures">
@@ -653,7 +654,7 @@ exists in the graph. If the edge does not exist, it returns <code>null</code>.</
653
654
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
654
655
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#getEndsOfEdge">getEndsOfEdge</a></p>
655
656
  <ul>
656
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L276">src/data-structures/graph/undirected-graph.ts:276</a></li></ul></aside></li></ul></section>
657
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L255">src/data-structures/graph/undirected-graph.ts:255</a></li></ul></aside></li></ul></section>
657
658
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getMinCostBetween" class="tsd-anchor"></a>
658
659
  <h3 class="tsd-anchor-link"><span>get<wbr/>Min<wbr/>Cost<wbr/>Between</span><a href="#getMinCostBetween" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
659
660
  <ul class="tsd-signatures tsd-is-inherited">
@@ -691,7 +692,7 @@ vertices are not</p>
691
692
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
692
693
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#getMinCostBetween">getMinCostBetween</a></p>
693
694
  <ul>
694
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L312">src/data-structures/graph/abstract-graph.ts:312</a></li></ul></aside></li></ul></section>
695
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L301">src/data-structures/graph/abstract-graph.ts:301</a></li></ul></aside></li></ul></section>
695
696
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getMinPathBetween" class="tsd-anchor"></a>
696
697
  <h3 class="tsd-anchor-link"><span>get<wbr/>Min<wbr/>Path<wbr/>Between</span><a href="#getMinPathBetween" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
697
698
  <ul class="tsd-signatures tsd-is-inherited">
@@ -725,9 +726,10 @@ to false, the function will use breadth-first search (BFS) to find the minimum p
725
726
  two vertices (<code>v1</code> and <code>v2</code>). If no path is found, it returns <code>null</code>.</p>
726
727
 
727
728
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
729
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#getMinPathBetween">getMinPathBetween</a></p>
728
730
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#getMinPathBetween">getMinPathBetween</a></p>
729
731
  <ul>
730
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L369">src/data-structures/graph/abstract-graph.ts:369</a></li></ul></aside></li></ul></section>
732
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L358">src/data-structures/graph/abstract-graph.ts:358</a></li></ul></aside></li></ul></section>
731
733
  <section class="tsd-panel tsd-member"><a id="getNeighbors" class="tsd-anchor"></a>
732
734
  <h3 class="tsd-anchor-link"><span>get<wbr/>Neighbors</span><a href="#getNeighbors" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
733
735
  <ul class="tsd-signatures">
@@ -747,9 +749,10 @@ two vertices (<code>v1</code> and <code>v2</code>). If no path is found, it retu
747
749
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">V</span><span class="tsd-signature-symbol">[]</span></h4><p>an array of UndirectedVertex objects.</p>
748
750
 
749
751
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
752
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#getNeighbors">getNeighbors</a></p>
750
753
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#getNeighbors">getNeighbors</a></p>
751
754
  <ul>
752
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L253">src/data-structures/graph/undirected-graph.ts:253</a></li></ul></aside></li></ul></section>
755
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L232">src/data-structures/graph/undirected-graph.ts:232</a></li></ul></aside></li></ul></section>
753
756
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getPathSumWeight" class="tsd-anchor"></a>
754
757
  <h3 class="tsd-anchor-link"><span>get<wbr/>Path<wbr/>Sum<wbr/>Weight</span><a href="#getPathSumWeight" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
755
758
  <ul class="tsd-signatures tsd-is-inherited">
@@ -770,7 +773,7 @@ two vertices (<code>v1</code> and <code>v2</code>). If no path is found, it retu
770
773
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
771
774
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#getPathSumWeight">getPathSumWeight</a></p>
772
775
  <ul>
773
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L290">src/data-structures/graph/abstract-graph.ts:290</a></li></ul></aside></li></ul></section>
776
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L279">src/data-structures/graph/abstract-graph.ts:279</a></li></ul></aside></li></ul></section>
774
777
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="getVertex" class="tsd-anchor"></a>
775
778
  <h3 class="tsd-anchor-link"><span>get<wbr/>Vertex</span><a href="#getVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
776
779
  <ul class="tsd-signatures tsd-is-inherited">
@@ -784,7 +787,7 @@ two vertices (<code>v1</code> and <code>v2</code>). If no path is found, it retu
784
787
  <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">V</span></h4><aside class="tsd-sources">
785
788
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#getVertex">getVertex</a></p>
786
789
  <ul>
787
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L133">src/data-structures/graph/abstract-graph.ts:133</a></li></ul></aside></li></ul></section>
790
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L126">src/data-structures/graph/abstract-graph.ts:126</a></li></ul></aside></li></ul></section>
788
791
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="hasEdge" class="tsd-anchor"></a>
789
792
  <h3 class="tsd-anchor-link"><span>has<wbr/>Edge</span><a href="#hasEdge" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
790
793
  <ul class="tsd-signatures tsd-is-inherited">
@@ -811,9 +814,10 @@ or a <code>V</code> type.</p>
811
814
  vertices <code>v1</code> and <code>v2</code>, and <code>false</code> otherwise.</p>
812
815
 
813
816
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
817
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#hasEdge">hasEdge</a></p>
814
818
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#hasEdge">hasEdge</a></p>
815
819
  <ul>
816
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L208">src/data-structures/graph/abstract-graph.ts:208</a></li></ul></aside></li></ul></section>
820
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L197">src/data-structures/graph/abstract-graph.ts:197</a></li></ul></aside></li></ul></section>
817
821
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="hasVertex" class="tsd-anchor"></a>
818
822
  <h3 class="tsd-anchor-link"><span>has<wbr/>Vertex</span><a href="#hasVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
819
823
  <ul class="tsd-signatures tsd-is-inherited">
@@ -833,9 +837,10 @@ vertices <code>v1</code> and <code>v2</code>, and <code>false</code> otherwise.<
833
837
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The method <code>hasVertex</code> returns a boolean value.</p>
834
838
 
835
839
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
840
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#hasVertex">hasVertex</a></p>
836
841
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#hasVertex">hasVertex</a></p>
837
842
  <ul>
838
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L147">src/data-structures/graph/abstract-graph.ts:147</a></li></ul></aside></li></ul></section>
843
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L136">src/data-structures/graph/abstract-graph.ts:136</a></li></ul></aside></li></ul></section>
839
844
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="removeAllVertices" class="tsd-anchor"></a>
840
845
  <h3 class="tsd-anchor-link"><span>remove<wbr/>All<wbr/>Vertices</span><a href="#removeAllVertices" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
841
846
  <ul class="tsd-signatures tsd-is-inherited">
@@ -856,9 +861,10 @@ of vertex IDs (<code>VertexId[]</code>).</p>
856
861
  were removed.</p>
857
862
 
858
863
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
864
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#removeAllVertices">removeAllVertices</a></p>
859
865
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#removeAllVertices">removeAllVertices</a></p>
860
866
  <ul>
861
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L185">src/data-structures/graph/abstract-graph.ts:185</a></li></ul></aside></li></ul></section>
867
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L174">src/data-structures/graph/abstract-graph.ts:174</a></li></ul></aside></li></ul></section>
862
868
  <section class="tsd-panel tsd-member"><a id="removeEdge" class="tsd-anchor"></a>
863
869
  <h3 class="tsd-anchor-link"><span>remove<wbr/>Edge</span><a href="#removeEdge" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
864
870
  <ul class="tsd-signatures">
@@ -878,9 +884,10 @@ containing the two vertices connected by the edge.</p>
878
884
  <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">E</span></h4><p>The method is returning an UndirectedEdge object or null.</p>
879
885
 
880
886
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
887
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#removeEdge">removeEdge</a></p>
881
888
  <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#removeEdge">removeEdge</a></p>
882
889
  <ul>
883
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L185">src/data-structures/graph/undirected-graph.ts:185</a></li></ul></aside></li></ul></section>
890
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L177">src/data-structures/graph/undirected-graph.ts:177</a></li></ul></aside></li></ul></section>
884
891
  <section class="tsd-panel tsd-member"><a id="removeEdgeBetween" class="tsd-anchor"></a>
885
892
  <h3 class="tsd-anchor-link"><span>remove<wbr/>Edge<wbr/>Between</span><a href="#removeEdgeBetween" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
886
893
  <ul class="tsd-signatures">
@@ -909,9 +916,9 @@ between the two vertices <code>v1</code> and <code>v2</code>. If either <code>v1
909
916
  between them, the function returns <code>null</code>.</p>
910
917
 
911
918
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
912
- <p>Overrides <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#removeEdgeBetween">removeEdgeBetween</a></p>
919
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#removeEdgeBetween">removeEdgeBetween</a></p>
913
920
  <ul>
914
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/undirected-graph.ts#L158">src/data-structures/graph/undirected-graph.ts:158</a></li></ul></aside></li></ul></section>
921
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/undirected-graph.ts#L150">src/data-structures/graph/undirected-graph.ts:150</a></li></ul></aside></li></ul></section>
915
922
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="removeVertex" class="tsd-anchor"></a>
916
923
  <h3 class="tsd-anchor-link"><span>remove<wbr/>Vertex</span><a href="#removeVertex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
917
924
  <ul class="tsd-signatures tsd-is-inherited">
@@ -931,9 +938,10 @@ between them, the function returns <code>null</code>.</p>
931
938
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The method <code>removeVertex</code> returns a boolean value.</p>
932
939
 
933
940
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
941
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#removeVertex">removeVertex</a></p>
934
942
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#removeVertex">removeVertex</a></p>
935
943
  <ul>
936
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L173">src/data-structures/graph/abstract-graph.ts:173</a></li></ul></aside></li></ul></section>
944
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L162">src/data-structures/graph/abstract-graph.ts:162</a></li></ul></aside></li></ul></section>
937
945
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="setEdgeWeight" class="tsd-anchor"></a>
938
946
  <h3 class="tsd-anchor-link"><span>set<wbr/>Edge<wbr/>Weight</span><a href="#setEdgeWeight" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
939
947
  <ul class="tsd-signatures tsd-is-inherited">
@@ -966,9 +974,10 @@ and the destination vertex (destOrId).</p>
966
974
  the weight of the edge and return true. If the edge does not exist, the function will return false.</p>
967
975
 
968
976
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
977
+ <p>Implementation of <a href="../interfaces/IUNDirectedGraph.html">IUNDirectedGraph</a>.<a href="../interfaces/IUNDirectedGraph.html#setEdgeWeight">setEdgeWeight</a></p>
969
978
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#setEdgeWeight">setEdgeWeight</a></p>
970
979
  <ul>
971
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L233">src/data-structures/graph/abstract-graph.ts:233</a></li></ul></aside></li></ul></section>
980
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L222">src/data-structures/graph/abstract-graph.ts:222</a></li></ul></aside></li></ul></section>
972
981
  <section class="tsd-panel tsd-member tsd-is-inherited"><a id="tarjan" class="tsd-anchor"></a>
973
982
  <h3 class="tsd-anchor-link"><span>tarjan</span><a href="#tarjan" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
974
983
  <ul class="tsd-signatures tsd-is-inherited">
@@ -1030,7 +1039,7 @@ are arrays of vertices that form cycles within the SCCs.</p>
1030
1039
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
1031
1040
  <p>Inherited from <a href="AbstractGraph.html">AbstractGraph</a>.<a href="AbstractGraph.html#tarjan">tarjan</a></p>
1032
1041
  <ul>
1033
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/860d18d/src/data-structures/graph/abstract-graph.ts#L869">src/data-structures/graph/abstract-graph.ts:869</a></li></ul></aside></li></ul></section></section></div>
1042
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/2ea57d2/src/data-structures/graph/abstract-graph.ts#L845">src/data-structures/graph/abstract-graph.ts:845</a></li></ul></aside></li></ul></section></section></div>
1034
1043
  <div class="col-sidebar">
1035
1044
  <div class="page-menu">
1036
1045
  <div class="tsd-navigation settings">
@@ -1054,10 +1063,8 @@ are arrays of vertices that form cycles within the SCCs.</p>
1054
1063
  <li><a href="#_edges" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_edges</span></a></li>
1055
1064
  <li><a href="#edges" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>edges</span></a></li>
1056
1065
  <li><a href="#vertices" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>vertices</span></a></li>
1057
- <li><a href="#_createEdge" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_create<wbr/>Edge</span></a></li>
1058
- <li><a href="#_createVertex" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_create<wbr/>Vertex</span></a></li>
1059
- <li><a href="#_getVertex" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Vertex</span></a></li>
1060
- <li><a href="#_getVertexId" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Vertex<wbr/>Id</span></a></li>
1066
+ <li><a href="#_getVertex" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Vertex</span></a></li>
1067
+ <li><a href="#_getVertexId" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_get<wbr/>Vertex<wbr/>Id</span></a></li>
1061
1068
  <li><a href="#_setEdges" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Edges</span></a></li>
1062
1069
  <li><a href="#_setVertices" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>_set<wbr/>Vertices</span></a></li>
1063
1070
  <li><a href="#addEdge" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>add<wbr/>Edge</span></a></li>
@@ -1065,6 +1072,8 @@ are arrays of vertices that form cycles within the SCCs.</p>
1065
1072
  <li><a href="#bellmanFord" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>bellman<wbr/>Ford</span></a></li>
1066
1073
  <li><a href="#createAddEdge" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Add<wbr/>Edge</span></a></li>
1067
1074
  <li><a href="#createAddVertex" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Add<wbr/>Vertex</span></a></li>
1075
+ <li><a href="#createEdge" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Edge</span></a></li>
1076
+ <li><a href="#createVertex" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Vertex</span></a></li>
1068
1077
  <li><a href="#degreeOf" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>degree<wbr/>Of</span></a></li>
1069
1078
  <li><a href="#dijkstra" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>dijkstra</span></a></li>
1070
1079
  <li><a href="#dijkstraWithoutHeap" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>dijkstra<wbr/>Without<wbr/>Heap</span></a></li>
@@ -1073,7 +1082,6 @@ are arrays of vertices that form cycles within the SCCs.</p>
1073
1082
  <li><a href="#floyd" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>floyd</span></a></li>
1074
1083
  <li><a href="#getAllPathsBetween" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>All<wbr/>Paths<wbr/>Between</span></a></li>
1075
1084
  <li><a href="#getEdge" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Edge</span></a></li>
1076
- <li><a href="#getEdgesOf" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Edges<wbr/>Of</span></a></li>
1077
1085
  <li><a href="#getEndsOfEdge" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Ends<wbr/>Of<wbr/>Edge</span></a></li>
1078
1086
  <li><a href="#getMinCostBetween" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Min<wbr/>Cost<wbr/>Between</span></a></li>
1079
1087
  <li><a href="#getMinPathBetween" class="tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Min<wbr/>Path<wbr/>Between</span></a></li>
@@ -1134,6 +1142,8 @@ are arrays of vertices that form cycles within the SCCs.</p>
1134
1142
  <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>
1135
1143
  <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>
1136
1144
  <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>
1145
+ <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>
1146
+ <li><a href="RBTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>RBTree<wbr/>Node</span></a></li>
1137
1147
  <li><a href="SegmentTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Segment<wbr/>Tree</span></a></li>
1138
1148
  <li><a href="SegmentTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Segment<wbr/>Tree<wbr/>Node</span></a></li>
1139
1149
  <li><a href="SinglyLinkedList.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Singly<wbr/>Linked<wbr/>List</span></a></li>
@@ -1153,16 +1163,20 @@ are arrays of vertices that form cycles within the SCCs.</p>
1153
1163
  <li><a href="UndirectedGraph.html" class="current"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Undirected<wbr/>Graph</span></a></li>
1154
1164
  <li><a href="UndirectedVertex.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Undirected<wbr/>Vertex</span></a></li>
1155
1165
  <li><a href="Vector2D.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Vector2D</span></a></li>
1156
- <li><a href="../interfaces/IBinaryTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-256"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.51 16V15.016H11.298V8.224H9.51V7.24H14.19V8.224H12.402V15.016H14.19V16H9.51Z" fill="var(--color-text)"></path></g></svg><span>IBinary<wbr/>Tree</span></a></li>
1157
- <li><a href="../interfaces/IBinaryTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IBinary<wbr/>Tree<wbr/>Node</span></a></li>
1166
+ <li><a href="../interfaces/IAVLTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-256"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.51 16V15.016H11.298V8.224H9.51V7.24H14.19V8.224H12.402V15.016H14.19V16H9.51Z" fill="var(--color-text)"></path></g></svg><span>IAVLTree</span></a></li>
1167
+ <li><a href="../interfaces/IAVLTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IAVLTree<wbr/>Node</span></a></li>
1168
+ <li><a href="../interfaces/IAbstractBinaryTree.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IAbstract<wbr/>Binary<wbr/>Tree</span></a></li>
1169
+ <li><a href="../interfaces/IAbstractBinaryTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IAbstract<wbr/>Binary<wbr/>Tree<wbr/>Node</span></a></li>
1170
+ <li><a href="../interfaces/IAbstractGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IAbstract<wbr/>Graph</span></a></li>
1171
+ <li><a href="../interfaces/IBST.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IBST</span></a></li>
1172
+ <li><a href="../interfaces/IBSTNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IBSTNode</span></a></li>
1158
1173
  <li><a href="../interfaces/IDirectedGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IDirected<wbr/>Graph</span></a></li>
1159
- <li><a href="../interfaces/IGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IGraph</span></a></li>
1160
1174
  <li><a href="../interfaces/IUNDirectedGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IUNDirected<wbr/>Graph</span></a></li>
1161
1175
  <li><a href="../types/AVLTreeOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-4194304"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M11.31 16V8.224H8.91V7.24H14.79V8.224H12.39V16H11.31Z" fill="var(--color-text)"></path></g></svg><span>AVLTree<wbr/>Options</span></a></li>
1176
+ <li><a href="../types/AbstractBinaryTreeNodeProperties.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Binary<wbr/>Tree<wbr/>Node<wbr/>Properties</span></a></li>
1177
+ <li><a href="../types/AbstractBinaryTreeNodeProperty.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Binary<wbr/>Tree<wbr/>Node<wbr/>Property</span></a></li>
1162
1178
  <li><a href="../types/AbstractBinaryTreeOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Binary<wbr/>Tree<wbr/>Options</span></a></li>
1163
1179
  <li><a href="../types/AbstractRecursiveBinaryTreeNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Recursive<wbr/>Binary<wbr/>Tree<wbr/>Node</span></a></li>
1164
- <li><a href="../types/AbstractResultByProperty.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Result<wbr/>By<wbr/>Property</span></a></li>
1165
- <li><a href="../types/AbstractResultsByProperty.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Abstract<wbr/>Results<wbr/>By<wbr/>Property</span></a></li>
1166
1180
  <li><a href="../types/BSTComparator.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>BSTComparator</span></a></li>
1167
1181
  <li><a href="../types/BSTOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>BSTOptions</span></a></li>
1168
1182
  <li><a href="../types/BinaryTreeDeletedResult.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-4194304"></use></svg><span>Binary<wbr/>Tree<wbr/>Deleted<wbr/>Result</span></a></li>