If we are given a graph, Now from source we are to calculate the shortest path. Now , If an edge has a negative weight , but there is edge to back-edge to get back to that edge
You can refer this link for determining actual negative cycle. https://cp-algorithms.com/graph/finding-negative-cycle-in-graph.html In last iteration of the algo . We only get to know about the effected node . Effected because of negative cycle. The actual negative cycle forms a infinite loop of parent[parent[parent].
Second loop of the code is like throwing a pinball from the top, after some time the ball revolves around a circular maze infinitely. We find that circular maze.