Example #1
0
        private static int GetHeightOfTree(Node root)
        {
            Queue<Node> q = new Queue<Node>();
            q.Enqueue(root);
            q.Enqueue(null);

            int count = 0;

            while (q.Count > 1)
            {
                Node node = q.Dequeue();

                if (node != null)
                {
                    if (node.left != null)
                    {
                        q.Enqueue(node.left);
                    }
                    if (node.right != null)
                    {
                        q.Enqueue(node.right);
                    }
                }
                else
                {
                        q.Enqueue(null);
                        count++;
                }
            }

            return count + 1;
        }
Example #2
0
        public static Node ConstructTree()
        {

            Node n1 = new Node(1);
            Node n2 = new Node(2);
            Node n3 = new Node(3);
            Node n4 = new Node(4);
            Node n5 = new Node(5);
            Node n6 = new Node(6);
            Node n7 = new Node(7);

            //Node n1 = new Node(11);
            //Node n2 = new Node(2);
            //Node n3 = new Node(3);
            //Node n4 = new Node(1);
            //Node n5 = new Node(5);
            //Node n6 = new Node(6);
            //Node n7 = new Node(7);
            //Node n8 = new Node(7);
            //Node n9 = new Node(7);
            //Node n10 = new Node(7);
            //Node n11 = new Node(7);
            //Node n12 = new Node(7);
            //Node n13 = new Node(7);


            n1.left = n2;
            n1.right = n3;
            n2.left = n4;
            n2.right = n5;
            n3.left = n6;
            n3.right = n7;

            //n5.right = n8;
            //n8.right = n9;
            //n9.right = n10;
            //n4.right = n11;
            //n11.right = n12;
            //n12.right = n13;

            return n1;
        }
Example #3
0
 public Node(int data)
 {
     this.data = data;
     left = null;
     right = null;
 }