【leetcode】690.员工的重要性

简介: 【leetcode】690.员工的重要性

16.png


题目讲解

一个领导可以有多个下属,一个下属只有一个领导,这就是一颗抽象的树,员工的重要性就是 root.val 。现在,问题就转换成,找到一棵树的某个结点,返回以此结点为头结点的树上所有结点的 root.val 之和。


先遍历找到这个领导,将这个领导作为这颗数的头结点(root),再使用递归将领导和直系下属的重要度全部累加。


详细代码

public class Solution {
    public int getImportance(List<Employee> employees, int id) {
        Employee root = null;
        for (Employee e : employees) {
            if (e.id == id) {
                root = e;
                break;
            }
        }
        int ans = root.importance;
        for (int sub : root.subordinates) {
            ans += getImportance(employees, sub);
        }
        return ans;
    }
}


目录
相关文章
|
7月前
|
SQL
leetcode-SQL-1741. 查找每个员工花费的总时间
leetcode-SQL-1741. 查找每个员工花费的总时间
68 0
|
7月前
|
SQL
leetcode-SQL-181. 超过经理收入的员工
leetcode-SQL-181. 超过经理收入的员工
47 0
|
6月前
|
SQL 存储 移动开发
力扣第185题:部门工资前三高的员工
力扣第185题:部门工资前三高的员工
|
6月前
|
SQL 算法 大数据
深入解析力扣184题:部门工资最高的员工(子查询与窗口函数详解)
深入解析力扣184题:部门工资最高的员工(子查询与窗口函数详解)
|
6月前
|
SQL 算法 大数据
深入解析力扣181题:超过经理收入的员工(自连接方法详解及模拟面试问答)
深入解析力扣181题:超过经理收入的员工(自连接方法详解及模拟面试问答)
|
7月前
|
SQL 算法 vr&ar
☆打卡算法☆LeetCode 181. 超过经理收入的员工 算法解析
☆打卡算法☆LeetCode 181. 超过经理收入的员工 算法解析
|
7月前
|
SQL
leetcode-SQL-1731. 每位经理的下属员工数量
leetcode-SQL-1731. 每位经理的下属员工数量
48 0
|
7月前
|
SQL
leetcode-SQL-184. 部门工资最高的员工
leetcode-SQL-184. 部门工资最高的员工
29 0
【LeetCode】员工的重要性 | 图像渲染 | 岛屿问题
【LeetCode】员工的重要性 | 图像渲染 | 岛屿问题
【LeetCode】员工的重要性 | 图像渲染 | 岛屿问题
|
3月前
|
Unix Shell Linux
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
本文提供了几个Linux shell脚本编程问题的解决方案,包括转置文件内容、统计词频、验证有效电话号码和提取文件的第十行,每个问题都给出了至少一种实现方法。
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行