Fix Dijkstra's Algorithm by exiting early at target vertex

This commit is contained in:
Stefan Müller 2025-05-05 19:05:02 +02:00
parent 1c860f7e4c
commit 4302a7b2f7

View File

@ -62,9 +62,13 @@ int WeightedEdgeGraph::dijkstra(const int source, const int target) const
distances[neighbor] = newDistance; distances[neighbor] = newDistance;
queue.push(neighbor); queue.push(neighbor);
} }
if (neighbor == target)
{
return distances[target];
}
incidence = vertexEdgeIncidences_[incidence].next; incidence = vertexEdgeIncidences_[incidence].next;
} }
} }
return distances[target]; return -1;
} }