The root is the topmost node of a tree. It has no parent and is the starting point of the tree.
Click to reveal answer
beginner
Define a leaf node in a tree.
A leaf node is a node that has no children. It is at the end of a branch.
Click to reveal answer
intermediate
What does the height of a node represent?
Height of a node is the number of edges on the longest path from that node down to a leaf.
Click to reveal answer
intermediate
Explain the depth of a node in a tree.
Depth of a node is the number of edges from the root node down to that node.
Click to reveal answer
beginner
What is the level of a node in a tree?
Level of a node is its depth plus one. The root is at level 1, its children at level 2, and so on.
Click to reveal answer
Which node in a tree has no parent?
ARoot
BLeaf
CChild
DSibling
✗ Incorrect
The root node is the only node without a parent.
A node with no children is called a?
ARoot
BParent
CAncestor
DLeaf
✗ Incorrect
Leaf nodes have no children and are at the ends of branches.
What does the height of a node measure?
AEdges from node to leaf
BNumber of siblings
CNumber of children
DEdges from root to node
✗ Incorrect
Height counts edges on the longest path from the node down to a leaf.
Depth of a node is the number of edges from?
ANode to leaf
BSibling to node
CRoot to node
DParent to child
✗ Incorrect
Depth counts edges from the root down to the node.
If the root is at level 1, what level are its children at?
A1
B2
C0
DDepends on height
✗ Incorrect
Children of the root are at level 2, which is depth + 1.
Describe the difference between the height and depth of a node in a tree.
Think about where you start counting edges for each.
You got /4 concepts.
Explain what the root, leaf, and level of nodes mean in a tree.
Imagine a family tree starting from the oldest ancestor.
You got /4 concepts.
Practice
(1/5)
1. In a tree data structure, which node is called the root?
easy
A. The deepest node in the tree
B. The topmost node with no parent
C. A node with exactly two children
D. Any node with no children
Solution
Step 1: Understand the root node definition
The root node is the starting point of the tree and has no parent node above it.
Step 2: Identify the correct node type
Nodes with no children are called leaves, not root. The root is unique and at the top.
Final Answer:
The topmost node with no parent -> Option B
Quick Check:
Root = topmost node with no parent [OK]
Hint: Root is always the top node without a parent [OK]
Common Mistakes:
Confusing root with leaf nodes
Thinking root has children but no parent
Assuming root is the deepest node
2. Which of the following correctly represents a leaf node in a tree?
easy
A. A node with no children
B. The root node
C. A node with at least one child
D. A node with a parent and children
Solution
Step 1: Define a leaf node
A leaf node is a node that does not have any children nodes connected below it.
Step 2: Check options against definition
Only the option "A node with no children" matches the leaf node definition.
Final Answer:
A node with no children -> Option A
Quick Check:
Leaf = node with no children [OK]
Hint: Leaf nodes have zero children [OK]
Common Mistakes:
Thinking leaf nodes can have children
Confusing leaf with root node
Assuming leaf nodes must have a parent
3. Consider the following tree structure:
A
/ \
B C
/ / \
D E F
What is the height of node C?
medium
A. 0
B. 2
C. 3
D. 1
Solution
Step 1: Understand height of a node
Height is the number of edges on the longest path from the node down to a leaf.
Step 2: Calculate height of node C
Node C has children E and F, both leaves (height 0). So height of C = 1 + max(0,0) = 1.
Step 3: Verify options
1 says 1, but height counts edges down, so height is 1. 2 says 2, which is incorrect. Actually, height is 1.
Final Answer:
1 -> Option D
Quick Check:
Height of C = 1 edge to leaf [OK]
Hint: Height counts edges down to farthest leaf [OK]
Common Mistakes:
Counting nodes instead of edges for height
Confusing height with depth
Ignoring that leaves have height 0
4. Given the code snippet below to find the depth of a node in a tree, identify the error:
int depth(Node* root, Node* target) {
if (root == NULL) return -1;
if (root == target) return 0;
int d = depth(root->left, target);
if (d >= 0) return d + 1;
d = depth(root->right, target);
if (d >= 0) return d + 1;
return -1;
}
medium
A. Function returns -1 when target is root
B. Function does not check both subtrees properly
C. Function correctly calculates depth
D. Function returns depth starting from 1 instead of 0
Solution
Step 1: Analyze base cases
If root is NULL, returns -1 (not found). If root is target, returns 0 (depth zero at root).
Step 2: Check recursive calls
Recursively checks left subtree; if found, adds 1. Else checks right subtree similarly. Returns -1 if not found.
Step 3: Confirm correctness
This correctly calculates depth as number of edges from root to target, starting at 0 for root.
Final Answer:
Function correctly calculates depth -> Option C
Quick Check:
Depth function logic is correct [OK]
Hint: Depth counts edges from root; base case returns 0 [OK]
Common Mistakes:
Returning wrong base case values
Not checking both left and right subtrees
Confusing depth with height
5. In a tree, the level of a node is defined as its depth plus 1. Given the tree below:
R
/ \
A B
/ \
C D
\
E
What is the level of node E?
hard
A. 4
B. 3
C. 5
D. 2
Solution
Step 1: Find depth of node E
Depth is number of edges from root R to E. Path: R -> B -> D -> E has 3 edges, so depth = 3.
Step 2: Calculate level from depth
Level = depth + 1 = 3 + 1 = 4.
Final Answer:
4 -> Option A
Quick Check:
Level = depth + 1 = 4 [OK]
Hint: Level = depth + 1, count edges then add one [OK]
Common Mistakes:
Counting nodes instead of edges for depth
Forgetting to add 1 for level
Confusing level with height
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.