Once distances are final, each non-source router keeps the predecessor that gave its shortest path. Those predecessors form a tree rooted at A.
The tree starts at A
The shortest-path tree is rooted at A with distance 0.
Predecessors become edges
Every router except A contributes one predecessor edge, so this tree has 5 edges.
Read C from the tree
C sits under A with distance 2, so C's predecessor is A.
pred(C)=A
Read E from the tree
E sits under D with distance 6, matching the relaxation improvement from D.
pred(E)=D
Final distances
The recomputed final distances include D at 5, E at 6, and F at 10.
Summary
The displayed tree is not trusted as input; each predecessor and distance is derived from the pinned topology and source.
derived shortest-path tree