Beispiel #1
0
        public IEnumerable <IBinaryTreeNode <TItem> > TraversePreOrder()
        {
            var nodes = new List <IBinaryTreeNode <TItem> >();

            if (LeftNode != null)
            {
                nodes.AddRange(LeftNode.TraversePreOrder());
            }
            nodes.Add(this);
            if (RightNode != null)
            {
                nodes.AddRange(RightNode.TraversePreOrder());
            }
            return(nodes);
        }