Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Recursive Tree Sum

EasyPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Recursive Tree Sum. Start with the requirements on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

Hub International organizes some policy coverage information as a rooted, n-ary tree. Each node contains an integer value and zero or more child nodes. Write a recursive function that returns the sum of values across the entire tree.

The tree is represented as nested Python dictionaries. Each node has a value key containing an integer and a children key containing a list of child-node dictionaries. An empty tree is represented by None and has sum 0.

Your implementation must visit every node exactly once. Values may be positive, zero, or negative. Explain how recursion uses the call stack, and identify the practical limitation when the tree is extremely deep.

Formal Specification

Implement sum_coverage_tree(root), where root is either None or a dictionary with this shape:

{"value": int, "children": list[dict]}

Return one integer equal to the sum of every node value in the tree.

Constraints

  • 0 <= number of nodes <= 100,000
  • -10^9 <= node.value <= 10^9
  • Each node has a children list.
  • The input is a valid tree with no cycles.
  • Tree height may be much smaller or larger than its branching factor.

Function Signature

def sum_coverage_tree(root):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output