给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度 和 直系下属的id。

比如,员工1是员工2的领导,员工2是员工3的领导。他们相应的重要度为15, 10, 5。那么员工1的数据结构是[1, 15, [2]],员工2的数据结构是[2, 10, [3]],员工3的数据结构是[3, 5, []]。注意虽然员工3也是员工1的一个下属,但是由于并不是直系下属,因此没有体现在员工1的数据结构中。

现在输入一个公司的所有员工信息,以及单个员工id,返回这个员工和他所有下属的重要度之和。

示例 1:

输入: [[1, 5, [2, 3]], [2, 3, []], [3, 3, []]], 1 输出: 11 解释: 员工1自身的重要度是5,他有两个直系下属2和3,而且2和3的重要度均为3。因此员工1的总重要度是 5 + 3 + 3 = 11。

注意:

  1. 一个员工最多有一个直系领导,但是可以有多个直系下属
  2. 员工数量不超过2000。

方法一:

类似树的层次遍历

class Solution {
public:int getImportance(vector<Employee*> employees, int id){if(employees.size() == 0)return 0;int sum = 0;map<int, Employee*> check;for(int i = 0; i < employees.size(); i++){check[employees[i] ->id] = employees[i];}queue<Employee*> q;q.push(check[id]);while(!q.empty()){int len = q.size();for(int i = 0; i < len; i++){Employee* temp = q.front();q.pop();sum += temp ->importance;for(int j = 0; j < temp ->subordinates.size(); j++){q.push(check[temp ->subordinates[j]]);}}}return sum;}
};

转载于:https://www.cnblogs.com/lMonster81/p/10434012.html

Leetcode690.Employee Importance员工的重要性相关推荐

  1. Java——员工的重要性

    题目链接 leetcode在线oj题--员工的重要性 题目描述 给定一个保存员工信息的数据结构,它包含了员工 唯一的 id ,重要度 和 直系下属的 id . 比如,员工 1 是员工 2 的领导,员工 ...

  2. 690. 员工的重要性

    690. 员工的重要性 原文:原文链接 给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度 和 直系下属的id. 比如,员工1是员工2的领导,员工2是员工3的领导.他们相应的重要度为15, ...

  3. leetcode690. 员工的重要性(bfs)

    给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度 和 直系下属的id. 比如,员工1是员工2的领导,员工2是员工3的领导.他们相应的重要度为15, 10, 5.那么员工1的数据结构是[1 ...

  4. leetcode 690. 员工的重要性(dfs)

    给定一个保存员工信息的数据结构,它包含了员工 唯一的 id ,重要度 和 直系下属的 id . 比如,员工 1 是员工 2 的领导,员工 2 是员工 3 的领导.他们相应的重要度为 15 , 10 , ...

  5. LeetCode 690. 员工的重要性(图的DFSBFS)

    文章目录 1. 题目 2. 解题 2.1 DFS 2.2 BFS 1. 题目 给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度 和 直系下属的id. 比如,员工1是员工2的领导,员工2是 ...

  6. Leetcode每日一题:690.employee-importance(员工的重要性)

    思路:找下属,求重要性和直接用BFS即可,关键是这里的数据结构不是链表,如何最快速度找到下属是最重要的:这里我用map将每个员工的id-下标索引存储起来,直接通过id得到其员工属性: int getI ...

  7. 690. Employee Importance

    内容: You are given a data structure of employee information, which includes the employee's unique id, ...

  8. 690.员工的重要性

    给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度 和 直系下属的id. 比如,员工1是员工2的领导,员工2是员工3的领导.他们相应的重要度为15, 10, 5.那么员工1的数据结构是[1 ...

  9. LC690. 员工的重要性

    BFS,这题主要考察对数据结构的掌握,把员工的数据以哈希表的形式进行存储,通过id获取整个员工的信息 def getImportance(self, employees, id):"&quo ...

最新文章

  1. abap 常用系统变量
  2. python 接雨水
  3. 我参与阿里巴巴 ASoC-Seata 的一些感悟
  4. 查找服务器大文件内容,Linux查找大文件命令,springmvc基础面试题
  5. Linux学习笔记005----CentOS7 vi模式保存并退出
  6. 临牌过期保险能理赔吗?
  7. smarty缓存控制
  8. 【华为云技术分享】软件工程师的AI模型训练起步
  9. python加载机制_yui3与python模块加载机制感悟
  10. 南通大学java期末_【Java爬虫】爬取南通大学教务处成绩
  11. Ardence公司PHAR-LAP ETS 简介
  12. Bootstrap Slider轮播图片样式控制
  13. 2016年华为研发出征大会演讲--任正非
  14. 扫描仪CCC认证注意事项及标准依据
  15. SPI flash远程加载FPGA 应用
  16. MySQL 精选问答 500 题
  17. 励志必看-------没有伞的孩子必须努力奔跑!
  18. 小学计算机集体备课活动记录,小学科学集体备课活动记录
  19. J2ME游戏开发(从零开始)
  20. CentOS7.5 Prometheus2.5+Grafana5.4监控部署

热门文章

  1. 数据结构学习笔记(一)——《大话数据结构》
  2. composer 更改为中国镜像
  3. Mysql分组查询group by语句详解
  4. 微信客户端<->腾讯微信服务器<->开发者服务器
  5. RHEL5.8配置开机自动挂载磁盘
  6. 关于eclipse中文注释乱码的问题
  7. 01背包问题,动态规划求解
  8. 如何在邮件系统中使用自己的域名?
  9. 安卓开发1-初步了解使用
  10. Activiti多人会签例子