LowestCommonAncestors

flatgraph.algorithm.LowestCommonAncestors

Find the lowest common ancestor(s)

  1. for each relevant node, find their recursive parents 2) create the intersection of all of those sets 3) the LCA are those nodes, that do not have any children in that set

based on https://www.baeldung.com/cs/lowest-common-ancestor-acyclic-graph

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def apply[A](nodes: Set[A])(parents: A => Set[A]): Set[A]