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

int getImportance(vector<Employee *> employees, int id)
{map<int, int> m; //建立员工id-数组索引的映射;int len = employees.size();//初始化mfor (int i = 0; i < len; i++){m[employees[i]->id] = i;}int import_sum = 0;queue<int> q;q.push(id);while (!q.empty()){int q_len = q.size();while (q_len--){Employee *cur = employees[m[q.front()]];q.pop();import_sum += cur->importance;for (auto i : cur->subordinates){q.push(i);}}}return import_sum;
}

Leetcode每日一题:690.employee-importance(员工的重要性)相关推荐

  1. Leetcode690.Employee Importance员工的重要性

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

  2. leetcode每日刷题计划-简单篇day8

    leetcode每日刷题计划-简单篇day8 今天是纠结要不要新买手机的一天QAQ想了想还是算了吧,等自己赚钱买,加油 Num 70 爬楼梯 Climbing Stairs class Solutio ...

  3. Leetcode每日一题:171.excel-sheet-column-number(Excel表列序号)

    思路:就是168题的反命题,进制的方式完美解决: Leetcode每日一题:168.excel-sheet-column-title(Excel表名称) class Solution {public: ...

  4. 【LeetCode每日一题】1723. 完成所有工作的最短时间

    [LeetCode每日一题]1723. 完成所有工作的最短时间 [1] 1723. 完成所有工作的最短时间 [2] 473. 火柴拼正方形 [1] 1723. 完成所有工作的最短时间 题目: 给你一个 ...

  5. leetcode每日一题--雀巢原理;抽屉算法;Quorum机制;分布式应用

    leetcode每日一题 539. 最小时间差 示例 1: 输入:timePoints = ["23:59","00:00"] 输出:1 示例 2: 输入:ti ...

  6. LeetCode每日一题——1812. 判断国际象棋棋盘中一个格子的颜色

    LeetCode每日一题系列 题目:1812. 判断国际象棋棋盘中一个格子的颜色 难度:简单 文章目录 LeetCode每日一题系列 题目 示例 思路 题解 题目 给你一个坐标 coordinates ...

  7. 【LeetCode每日一题】——109.有序链表转换二叉搜索树

    文章目录 一[题目类别] 二[题目难度] 三[题目编号] 四[题目描述] 五[题目示例] 六[题目提示] 七[解题思路] 八[时间频度] 九[代码实现] 十[提交结果] 一[题目类别] 二叉树 二[题 ...

  8. leetcode每日一题·救生艇问题(Python)

    leetcode每日一题·救生艇问题(Python) 问题描述 题目入口 题目思路 首先分析问题,一个船最多坐两人,因此我们可以把这个问题看作两两组合的问题,并且如果最重的那个人和最轻的人加起来大于l ...

  9. LeetCode每日一题——904. 水果成篮

    LeetCode每日一题系列 题目:904. 水果成篮 难度:普通 文章目录 LeetCode每日一题系列 题目 示例 思路 题解 题目 你正在探访一家农场,农场从左到右种植了一排果树.这些树用一个整 ...

  10. LeetCode每日一题打卡组队监督!刷题群!

    近 2000 人已经加入共同刷题啦! 群友每天都会在群里给大家讲解算法题 每周日「负雪明烛」组织直播讲题 我相信来看我博客的大部分人都是通过LeetCode刷题过来的.最近发现LeetCode中文网站 ...

最新文章

  1. 编写微指令 计算机组成,计算机组成原理微指令实验报告
  2. java多线程之Concurrent包
  3. Express全系列教程之(五):Express的中间件
  4. Hibernate入门注解笔记
  5. mailto发送邮件
  6. Python time和datetime时间戳和时间字符串相互转换
  7. 计算机视觉论文-2021-05-31
  8. 软件实施提升效率的五个工具
  9. 机器学习中常用的优化方法
  10. SSIS包的组建之连接管理器
  11. DFMZ-开发过程中遇到的错误-01
  12. 深入浅出带你了解磁共振成像基本原理
  13. 后flash时代的何去何从
  14. 【图示】AppleID绑定支付宝的方法
  15. 【Gamemaker】YYC1.4编译的程序研究
  16. linux之打包压缩(tar,gz,bz2,xz,zip)
  17. 《那些年啊,那些事——一个程序员的奋斗史》——43
  18. 计算机网络基础15:MikroTik路由器使用方法
  19. 30本Python学习参考书,从入门到大师全了!
  20. 圆环进度条 两种实现方式

热门文章

  1. oracle--存储过程--bai
  2. android 资料
  3. 一周随笔--15.10.06
  4. 『重构--改善既有代码的设计』读书笔记----Replace Temp with Query
  5. ArcGIS Runtime SDK for Android开发之调用GP服务(异步调用)
  6. 数据库中的超码、候选码、主码
  7. linux初始化进程
  8. 测开5 - Python(模块、操作数据库、操作Excel、加密)
  9. Linux部署Java环境
  10. c++ primer随笔