- lowest_common_ancestor(G, node1, node2, default=None)#
Compute the lowest common ancestor of the given pair of nodes.
- GNetworkX directed graph
- node1, node2nodes in the graph.
Returned if no common ancestor between
- The lowest common ancestor of node1 and node2,
- or default if they have no common ancestors.
Only defined on non-null directed acyclic graphs. Takes n log(n) time in the size of the graph. See
all_pairs_lowest_common_ancestorwhen you have more than one pair of nodes of interest.
>>> G = nx.DiGraph([(0, 1), (0, 2), (2, 3), (2, 4), (1, 6), (4, 5)]) >>> nx.lowest_common_ancestor(G, 3, 5) 2
We can also set
defaultargument as below. The value of default is returned if there are no common ancestors of given two nodes.
>>> G = nx.DiGraph([(4, 5), (12, 13)]) >>> nx.lowest_common_ancestor(G, 12, 5, default="No common ancestors!") 'No common ancestors!'