Encyclopedia > Tarjan's off-line least common ancestors algorithm

  Article Content

Tarjan's off-line least common ancestors algorithm

In computer science, Tarjan's off-line least common ancestors algorithm is an algorithm based on the least common ancestor[?] property.

The least common ancestor of two nodes d and e in a rooted tree T is the node g that is an ancestor of both d and e and that has the greatest depth in T.

The off-line least common ancestors problem gives us a rooted tree T and a set P = {{d,e}} of unordered pairs of nodes in T.

Tarjan's off-line least common ancestors algorithm determines the least common ancestor of each pair in P.

An example of the algorithm:

 TOLCA(u) {
 Make-set(u);
 ancestor[Find-Set(u)] <- u;
 for each child v in u in T
   do { TOLCA(v);
        Union(u,v);
        ancestor[Find-Set(u)] <- u;
      }
 colour[u] <- black;
 for each node v such that {u,v} in P
   do if (colour[v] = black) {
      print "Tarjan's Least Common Ancestor of" + u + " and " + v + " is " ancestor[Find-Set(v)];
      }
 }

The following procedure assumes each node is white before coloured black.



All Wikipedia text is available under the terms of the GNU Free Documentation License

 
  Search Encyclopedia

Search over one million articles, find something about almost anything!
 
 
  
  Featured Article
French resistance

... pilots who had been shot down to get back to Britain. They minimized the threat of discovery by adopting a cell structure[?]. Groups include: Agir[?] Armé ...

 
 
 
This page was created in 22 ms