LCP 44. 开幕式焰火
难度简单
题目描述
「力扣挑战赛」开幕式开始了,空中绽放了一颗二叉树形的巨型焰火。 给定一棵二叉树 root 代表焰火,节点值表示巨型焰火这一位置的颜色种类。请帮小扣计算巨型焰火有多少种不同的颜色。
示例 1:
输入:
root = [1,3,2,1,null,2]输出:
3解释:焰火中有 3 个不同的颜色,值分别为 1、2、3
示例 2:
输入:
root = [3,3,3]输出:
1解释:焰火中仅出现 1 个颜色,值为 3
提示:
1 <= 节点个数 <= 10001 <= Node.val <= 1000
解法
方法一
思考
节点数不超过 \(10^3\),颜色种类等于树中不同点值的个数。遍历一次即可收集全部取值。
深度优先访问每个节点,将 \(val\) 放入集合,答案为集合大小。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | |