Dijkstra Algorithm
Given vertexCount vertices numbered 0 through vertexCount - 1, an undirected weighted edge list edges, and source, return the shortest total edge weight from…
Given vertexCount vertices numbered 0 through vertexCount - 1, an undirected weighted edge list edges, and source, return the shortest total edge weight from source to each vertex in vertex order. Return 1000000000 for an unreachable vertex. Each edge is [left, right, weight]. Zero weights, self-loops, repeated edge occurrences, and disconnected graphs are permitted.
- 2 <= vertexCount <= 10000 - 1 <= edges.length <= vertexCount * (vertexCount - 1) / 2 - Every endpoint and source is an integer vertex ID - Every weight is an integer from 0 to 10000 - The edge cap counts occurrences, including duplicates and self-loops; no uniqueness requirement is imposed - Edge occurrences retain their input order - Visualizer inputs are limited to 12 vertices and 24 edge occurrences; Run Code and Submit support the full coding bounds.
Example 1: input vertexCount = 3, edges = [[0,1,10],[0,2,1],[2,1,1]], source = 0; output [0,2,1]. The path 0 to 2 to 1 costs 2, improving the direct cost 10.
Example 2: input vertexCount = 3, edges = [[0,1,7]], source = 0; output [0,7,1000000000]. Vertex 2 is unreachable.
Category: Graphs. Topic: graph. Difficulty: Hard. Patterns: graph-traversal, heap.