public int FindMaxValue(Tree tree, int depth) { if (depth > 0 && tree.ChildNodes.Count() > 0) return tree.ChildNodes.Max(tr => this.FindMaxValue(tr, depth - 1)); return tree.RootValue; }
public void DepthZeroReturnRootNode() { Tree tree = CreateTree(3); TreeSearch search = new TreeSearch(); Assert.AreEqual(3, search.FindMaxValue(tree, 0)); }