Last updated on October 9th, 2024 at 10:14 pm
This Leetcode problem Tree Node LeetCode Solution is done in SQL.
List of all LeetCode Solution
Level of Question
Medium
Tree Node LeetCode Solution
Table of Contents
Problem Statement
Column Name | Type |
id | int |
p_id | int |
Tree
id is the column with unique values for this table. Each row of this table contains information about the id of a node and the id of its parent node in a tree. The given structure is always a valid tree.
Each node in the tree can be one of three types:
- “Leaf”: if the node is a leaf node.
- “Root”: if the node is the root of the tree.
- “Inner”: If the node is neither a leaf node nor a root node.
Write a solution to report the type of each node in the tree.
Return the result table in any order.
The result format is in the following example.
Example 1:
Input:
id | p_id |
1 | null |
2 | 1 |
3 | 1 |
4 | 2 |
5 | 2 |
Output:
id | type |
1 | Root |
2 | Inner |
3 | Leaf |
4 | Leaf |
5 | Leaf |
Explanation:
Node 1 is the root node because its parent node is null and it has child nodes 2 and 3.
Node 2 is an inner node because it has parent node 1 and child node 4 and 5.
Nodes 3, 4, and 5 are leaf nodes because they have parent nodes and they do not have child nodes.
Example 2:
Input:
id | p_id |
1 | null |
Output:
id | type |
1 | Root |
Explanation: If there is only one node on the tree, you only need to output its root attributes.
1. Tree Node LeetCode Solution MySQL
select id, case when p_id is null then 'Root' when p_id is not null and id in ( select distinct p_id from tree ) then 'Inner' else 'Leaf' end as Type from tree;