How to find all shortest paths between node 1 and N in a weighted undirected graph? There can be multiple edges between two nodes.
I want to find all nodes that can be on a shortest path. For example:
10 11
1 2 1
1 3 1
3 4 2
4 5 1
5 6 1
5 10 2
1 7 1
7 8 3
7 9 2
9 10 2
8 10 1
The answer is
1 7 8 9 10
because there are two shortest ways
1 7 8 10
and
1 7 9 10