Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private static int FindRoot(int node, int[] parent)
- {
- // Find the root parent for the node
- int root = node;
- while (parent[root] != root)
- {
- root = parent[root];
- }
- // Optimize(compress) path from ndoe to root
- while (node != root)
- {
- var oldParentNode = parent[node];
- parent[node] = root;
- node = oldParentNode;
- }
- return root;
- }
Advertisement
Add Comment
Please, Sign In to add comment