public void ShouldReturnLeastCommonAncestorWith12Nodes() { var rootNode = TreeTestData.GetComplexTreeRootNodeWith12Nodes(); var nodeWithValue10 = TreeDSNode.Create(10); var nodeWithValue12 = TreeDSNode.Create(12); LeastCommonAncestor leastCommonAncestor = new LeastCommonAncestor(); var actualLCA = leastCommonAncestor.Find(rootNode, nodeWithValue10, nodeWithValue12); Assert.AreEqual(10, actualLCA.Value); }
public void ShouldReturnLeastCommonAncestor() { var rootNode = TreeTestData.GetComplexTreeRootNode(); var nodeWithValue4 = TreeDSNode.Create(4); var nodeWithValue5 = TreeDSNode.Create(5); var nodeWithValue3 = TreeDSNode.Create(3); LeastCommonAncestor leastCommonAncestor = new LeastCommonAncestor(); var actualLCA = leastCommonAncestor.Find(rootNode, nodeWithValue4, nodeWithValue5); Assert.AreEqual(2, actualLCA.Value); actualLCA = leastCommonAncestor.Find(rootNode, nodeWithValue4, nodeWithValue3); Assert.AreEqual(1, actualLCA.Value); }