diff --git a/src/data-structures/graph/Graph.js b/src/data-structures/graph/Graph.js index 18c7a70f..f9e69238 100644 --- a/src/data-structures/graph/Graph.js +++ b/src/data-structures/graph/Graph.js @@ -1,6 +1,6 @@ export default class Graph { /** - * @param isDirected {boolean} + * @param {boolean} isDirected */ constructor(isDirected = false) { this.vertices = {}; @@ -8,7 +8,7 @@ export default class Graph { } /** - * @param newVertex {GraphVertex} + * @param {GraphVertex} newVertex * @returns {Graph} */ addVertex(newVertex) { @@ -18,7 +18,7 @@ export default class Graph { } /** - * @param vertexKey {string} + * @param {string} vertexKey * @returns GraphVertex */ getVertexByKey(vertexKey) { @@ -26,7 +26,7 @@ export default class Graph { } /** - * @param edge {GraphEdge} + * @param {GraphEdge} edge * @returns {Graph} */ addEdge(edge) { @@ -62,8 +62,8 @@ export default class Graph { } /** - * @param startVertex {GraphVertex} - * @param endVertex {GraphVertex} + * @param {GraphVertex} startVertex + * @param {GraphVertex} endVertex */ findEdge(startVertex, endVertex) { const vertex = this.getVertexByKey(startVertex.getKey()); @@ -71,7 +71,7 @@ export default class Graph { } /** - * @param vertexKey {string} + * @param {string} vertexKey * @returns {GraphVertex} */ findVertexByKey(vertexKey) { diff --git a/src/data-structures/graph/GraphEdge.js b/src/data-structures/graph/GraphEdge.js index 386857ff..5dc565bb 100644 --- a/src/data-structures/graph/GraphEdge.js +++ b/src/data-structures/graph/GraphEdge.js @@ -1,8 +1,8 @@ export default class GraphEdge { /** - * @param startVertex {GraphVertex} - * @param endVertex {GraphVertex} - * @param weight {number} + * @param {GraphVertex} startVertex + * @param {GraphVertex} endVertex + * @param {number} [weight=1] */ constructor(startVertex, endVertex, weight = 1) { this.startVertex = startVertex; diff --git a/src/data-structures/graph/GraphVertex.js b/src/data-structures/graph/GraphVertex.js index a598af16..c0f99122 100644 --- a/src/data-structures/graph/GraphVertex.js +++ b/src/data-structures/graph/GraphVertex.js @@ -13,7 +13,7 @@ export default class GraphVertex { } /** - * @param edge {GraphEdge} + * @param {GraphEdge} edge * @returns {GraphVertex} */ addEdge(edge) { @@ -22,6 +22,9 @@ export default class GraphVertex { return this; } + /** + * @returns {GraphVertex[]} + */ getNeighbors() { const edges = this.edges.toArray(); @@ -35,7 +38,7 @@ export default class GraphVertex { } /** - * @param requiredEdge {GraphEdge} + * @param {GraphEdge} requiredEdge * @returns {boolean} */ hasEdge(requiredEdge) { @@ -47,7 +50,7 @@ export default class GraphVertex { } /** - * @param vertex {GraphVertex} + * @param {GraphVertex} vertex * @returns {boolean} */ hasNeighbor(vertex) { @@ -58,6 +61,10 @@ export default class GraphVertex { return !!vertexNode; } + /** + * @param {GraphVertex} vertex + * @returns {(GraphEdge|null)} + */ findEdge(vertex) { const edgeFinder = (edge) => { return edge.startVertex === vertex || edge.endVertex === vertex; @@ -76,7 +83,7 @@ export default class GraphVertex { } /** - * @param callback {function} + * @param {function} [callback] * @returns {string} */ toString(callback) {