コード例 #1
0
        public void CanEnumerateDepthFirstSearch()
        {
            var tree = new BinarySearchTree<int, int>(new[] {3, 2, 1, 2, 4, 3}.AsKeyValueList());

            var expected = new[] {3, 2, 1, 2, 4, 3};
            CollectionAssert.AreEqual(expected, tree.DepthFirstSearchEnumerator().Select(_ => _.Value).ToList());
        }
コード例 #2
0
        public void AppearInRootAfterAddingFirstElement()
        {
            var tree = new BinarySearchTree<int, int>();
            var element = 1.AsKeyValue();
            tree.Insert(element);

            Assert.IsTrue(tree.BreadthFirstSearchEnumerator().Contains(element));
            Assert.IsTrue(tree.DepthFirstSearchEnumerator().Contains(element));
        }
コード例 #3
0
        public void CountInEnumeratorsMustMatchCountInTree()
        {
            var tree = new BinarySearchTree<int, int>();

            tree.Insert(1.AsKeyValue());
            tree.Insert(3.AsKeyValue());
            tree.Insert(2.AsKeyValue());

            Assert.AreEqual(3, tree.BreadthFirstSearchEnumerator().Count());
            Assert.AreEqual(3, tree.DepthFirstSearchEnumerator().Count());
        }