伴你如风、护你如影|

xzh-yyds

园龄:3年9个月粉丝:0关注:2

leetcode690-员工的重要性

员工的重要性

  • dfs
class Solution {
    Map<Integer, Employee> map = new HashMap<>();
    public int getImportance(List<Employee> employees, int id) {
        for(Employee e : employees)
            map.put(e.id, e);
        return dfs(id);
    }
    public int dfs(int id){
        Employee e = map.get(id);
        int total = e.importance;
        for(int val : e.subordinates)
            total += dfs(val);
        return total;
    }
}
  • bfs
class Solution {
    public int getImportance(List<Employee> employees, int id) {
        List<Employee> list = new ArrayList<>();
        Map<Integer, Employee> map = new HashMap<>();
        for(Employee e : employees)
            map.put(e.id, e);
        list.add(map.get(id));
        int start = 0, total = 0;
        while(start < list.size()){
            Employee e = list.get(start);
            total += e.importance;
            for(int val : e.subordinates)
                list.add(map.get(val));
            start++;
        }
        return total;
    }
}

本文作者:xzh-yyds

本文链接:https://www.cnblogs.com/xzh-yyds/p/16592908.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   xzh-yyds  阅读(15)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
展开