public void IsBalanced_WhenTreeIsBalanced_AndHeighDiffIsOne_ReturnsTrue() { // Arrange var root = new BinaryTreeNode <int>(10); var rootLeft = new BinaryTreeNode <int>(4); var rootRight = new BinaryTreeNode <int>(4); root.Left = rootLeft; root.Right = rootRight; var rootLeftLeft = new BinaryTreeNode <int>(2); var rootLeftRight = new BinaryTreeNode <int>(8); rootLeft.Left = rootLeftLeft; rootLeft.Right = rootLeftRight; // Act var actual = CheckBalanced <int> .IsBalanced(root); // Assert actual.Should().BeTrue(); }
public void IsBalanced_WhenTreeIsNotBalanced_ReturnsFalse() { // Arrange var root = new BinaryTreeNode <int>(10); var rootLeft = new BinaryTreeNode <int>(4); root.Left = rootLeft; var rootLeftLeft = new BinaryTreeNode <int>(2); rootLeft.Left = rootLeftLeft; var rootLeftLeftleft = new BinaryTreeNode <int>(8); rootLeftLeft.Left = rootLeftLeftleft; var rootRight = new BinaryTreeNode <int>(3); rootRight.Right = new BinaryTreeNode <int>(33); // Act var actual = CheckBalanced <int> .IsBalanced(root); // Assert actual.Should().BeFalse(); }
public void CheckBalancedTest(TreeNode <int> root, bool expected) { bool result = CheckBalanced <int> .IsBalanced(root); Assert.Equal(expected, result); }