Exemplo n.º 1
0
        public void PreorderTraversalTest1()
        {
            TreeNode root = new TreeNode(1);

            root.left        = new TreeNode(2);
            root.left.left   = new TreeNode(4);
            root.left.right  = new TreeNode(5);
            root.right       = new TreeNode(3);
            root.right.left  = new TreeNode(6);
            root.right.right = new TreeNode(7);

            IList <int> expected = new List <int>()
            {
                1,
                2,
                4,
                5,
                3,
                6,
                7
            };
            var result = new BinaryTreePreorderTraversal().PreorderTraversal(root);

            Assert.AreEqual(expected, result);
        }
Exemplo n.º 2
0
        public void PreorderTraversalTest3()
        {
            TreeNode root = null;

            IList <int> expected = new List <int>()
            {
            };
            var result = new BinaryTreePreorderTraversal().PreorderTraversal(root);

            Assert.AreEqual(expected, result);
        }
Exemplo n.º 3
0
        public void PreorderTraversalOfIeterationTest2()
        {
            TreeNode root = new TreeNode(1);

            IList <int> expected = new List <int>()
            {
                1
            };
            var result = new BinaryTreePreorderTraversal().PreorderTraversalOfIteration(root);

            Assert.AreEqual(expected, result);
        }
Exemplo n.º 4
0
        public void PreorderTraversalTestCase2()
        {
            var tree = new MyBinaryTree(1);

            tree.Left      = new MyBinaryTree(4);
            tree.Left.Left = new MyBinaryTree(2);
            tree.Right     = new MyBinaryTree(3);

            BinaryTreePreorderTraversal.PreorderTraversal(tree).Should().ContainInOrder(new List <int>
            {
                1, 4, 2, 3
            });
        }
        public void Given_tree_When_traversal_return()
        {
            TreeNode node = new TreeNode(1)
            {
                left  = new TreeNode(2),
                right = new TreeNode(3)
            };

            var result = BinaryTreePreorderTraversal.PreorderTraversal(node);

            Assert.AreEqual(1, result[0]);
            Assert.AreEqual(2, result[1]);
            Assert.AreEqual(3, result[2]);
        }
Exemplo n.º 6
0
        public void TestMethod2()
        {
            // Arrange
            BinaryTreePreorderTraversal question = new BinaryTreePreorderTraversal();
            TreeNode root = new TreeNode(1);

            root.right      = new TreeNode(2);
            root.right.left = new TreeNode(3);
            int[] expected = new int[] { 1, 2, 3 };

            // Act
            IList <int> actual = question.PreorderTraversal2(root);

            // Assert
            CollectionAssert.AreEqual(expected, actual?.ToArray());
        }
Exemplo n.º 7
0
        public void PreorderTraversalTestCase1()
        {
            var tree = new MyBinaryTree(6);

            tree.Left             = new MyBinaryTree(2);
            tree.Left.Left        = new MyBinaryTree(1);
            tree.Left.Right       = new MyBinaryTree(4);
            tree.Left.Right.Left  = new MyBinaryTree(3);
            tree.Left.Right.Right = new MyBinaryTree(5);
            tree.Right            = new MyBinaryTree(7);
            tree.Right.Right      = new MyBinaryTree(9);
            tree.Right.Right.Left = new MyBinaryTree(8);

            BinaryTreePreorderTraversal.PreorderTraversal(tree).Should().ContainInOrder(new List <int>
            {
                6, 2, 1, 4, 3, 5, 7, 9, 8
            });
        }
Exemplo n.º 8
0
        public void binaryTreePreorderTraversalTest()
        {
            var result = BinaryTreePreorderTraversal.PreorderTraversal(root);

            Console.WriteLine("Preorder Traversal: ");
            foreach (int i in result)
            {
                Console.Write(i + ", ");
            }

            Console.WriteLine();
            var iterativePreorder = BinaryTreePreorderTraversal.IterativePreorderTraversal(root);

            Console.WriteLine("Preorder Traversal: ");
            foreach (int i in iterativePreorder)
            {
                Console.Write(i + ", ");
            }
        }