Bird
Raised Fist0
DSA Javaprogramming~10 mins

Tree Terminology Root Leaf Height Depth Level in DSA Java - Interactive Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to create the root node of a tree.

DSA Java
TreeNode root = new TreeNode([1]);
Drag options to blanks, or click blank then click option'
A1
B0
Croot
Dnull
Attempts:
3 left
💡 Hint
Common Mistakes
Using null instead of a value for the root node.
2fill in blank
medium

Complete the code to check if a node is a leaf (no children).

DSA Java
boolean isLeaf = (node.left == null && node.[1] == null);
Drag options to blanks, or click blank then click option'
Achild
Bparent
Cright
Droot
Attempts:
3 left
💡 Hint
Common Mistakes
Checking parent or root instead of right child.
3fill in blank
hard

Fix the error in the code to calculate the height of a node.

DSA Java
int height = 1 + Math.max(height(node.left), [1]);
Drag options to blanks, or click blank then click option'
Aheight
Bdepth
Clevel
Dheight(node.right)
Attempts:
3 left
💡 Hint
Common Mistakes
Using node.height or node.depth instead of recursive call.
4fill in blank
hard

Fill both blanks to calculate the depth of a node given its parent.

DSA Java
int depth = parent.[1] + [2];
Drag options to blanks, or click blank then click option'
Adepth
B1
Cheight
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Using height instead of depth.
Adding 0 instead of 1.
5fill in blank
hard

Fill all three blanks to create a method that returns the level of a node in the tree.

DSA Java
public int getLevel(TreeNode node) {
    if (node == null) return [1];
    return getLevel(node.parent) + [2]; // level is depth + 1
}

// Usage:
int level = getLevel([3]);
Drag options to blanks, or click blank then click option'
A0
B1
Cnode
Dnull
Attempts:
3 left
💡 Hint
Common Mistakes
Returning null instead of 0.
Adding 0 instead of 1.
Calling method with null instead of node.

Practice

(1/5)
1. In a tree data structure, which node is called the root?
easy
A. The topmost node with no parent
B. A node with no children
C. Any node at the bottom level
D. A node with exactly two children

Solution

  1. Step 1: Understand the root node concept

    The root node is the starting point of the tree and has no parent node above it.
  2. Step 2: Identify the correct description

    Among the options, only the topmost node with no parent matches the root node definition.
  3. Final Answer:

    The topmost node with no parent -> Option A
  4. Quick Check:

    Root = topmost node with no parent [OK]
Hint: Root node has no parent, always at the top [OK]
Common Mistakes:
  • Confusing root with leaf node
  • Thinking root must have children
  • Assuming root is any node at bottom
2. Which of the following is the correct way to declare a leaf node in Java if Node is a class representing tree nodes?
easy
A. Node leaf = new Node(); leaf.left = new Node();
B. Node leaf = null; // leaf nodes cannot be null
C. Node leaf = new Node(null, null); // no children
D. Node leaf = new Node(5); // with one child

Solution

  1. Step 1: Understand leaf node definition

    A leaf node has no children, so its left and right child references should be null.
  2. Step 2: Check each option for leaf node declaration

    Node leaf = new Node(5); // with one child: Node leaf = new Node(5); uses standard constructor which sets left = right = null, creating a leaf node. A adds a child. C likely causes syntax error (no such constructor). D is null, not a node.
  3. Final Answer:

    Node leaf = new Node(5); // with no children -> Option D
  4. Quick Check:

    Leaf node has no children = left and right null [OK]
Hint: Leaf nodes have no children, so child pointers are null [OK]
Common Mistakes:
  • Assuming leaf nodes must have data only
  • Creating children for leaf nodes
  • Setting leaf node to null reference
3. Consider the following tree structure:
        1
       / \
      2   3
     /   / \
    4   5   6
What is the height of the tree?
medium
A. 5
B. 3
C. 2
D. 4

Solution

  1. Step 1: Understand height of a tree

    Height is the number of edges on the longest path from root to a leaf node.
  2. Step 2: Find longest path from root (1) to leaf

    Paths: 1->2->4 has 2 edges, 1->3->5 has 2 edges, 1->3->6 has 2 edges. So height = 2.
  3. Final Answer:

    2 -> Option C
  4. Quick Check:

    Longest path edges = 2 [OK]
Hint: Height = longest edges from root to leaf [OK]
Common Mistakes:
  • Counting nodes instead of edges for height
  • Confusing height with depth
  • Counting root as height 1
4. Given the following code snippet, what is the error?
class Node {
  int data;
  Node left, right;
  Node(int data) {
    this.data = data;
    left = right = null;
  }
}

Node root = new Node(10);
root.left = new Node(20);
root.right = new Node(30);
root.left.left = new Node(40);
root.left.right = new Node(50);
root.right.left = new Node(60);
root.right.right = new Node(70);

System.out.println(root.left.right.data);
medium
A. NullPointerException at root.left.right
B. No error, prints 50
C. Syntax error in Node class
D. Prints 60 instead of 50

Solution

  1. Step 1: Trace node assignments

    root.left.right is assigned new Node(50), so it exists and has data 50.
  2. Step 2: Check print statement

    Printing root.left.right.data will print 50 without error.
  3. Final Answer:

    No error, prints 50 -> Option B
  4. Quick Check:

    root.left.right.data = 50 [OK]
Hint: Check if node is assigned before accessing data [OK]
Common Mistakes:
  • Assuming uninitialized nodes cause error here
  • Confusing left and right child nodes
  • Thinking print outputs 60
5. In a tree, if the root node is at level 0, what is the depth of the node with value 6 in the tree below?
        1
       / \
      2   3
     /   / \
    4   5   6
medium
A. 2
B. 1
C. 3
D. 4

Solution

  1. Step 1: Understand depth definition

    Depth is the number of edges from the root node to the target node.
  2. Step 2: Trace path from root (1) to node 6

    Path: 1 -> 3 -> 6 has 2 edges, so depth is 2.
  3. Final Answer:

    2 -> Option A
  4. Quick Check:

    Edges from root to node 6 = 2 [OK]
Hint: Depth = edges from root to node [OK]
Common Mistakes:
  • Counting nodes instead of edges for depth
  • Confusing depth with level starting at 1
  • Assuming depth equals height
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard