This Leetcode problem Tree Node LeetCode Solution is done in SQL.
List of all LeetCode Solution
![Tree Node LeetCode Solution](https://i0.wp.com/totheinnovation.com/wp-content/uploads/2024/02/LeetCode-Problem-Solution.png?resize=200%2C200&ssl=1)
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:
![tree1](https://i0.wp.com/assets.leetcode.com/uploads/2021/10/22/tree1.jpg?w=1400&ssl=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:
![tree2](https://i0.wp.com/assets.leetcode.com/uploads/2021/10/22/tree2.jpg?w=1400&ssl=1)
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.
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;
Code language: SQL (Structured Query Language) (sql)