首页 > 其他分享 >LeetCode 690. 员工的重要性(哈希表、深度优先搜索dfs)

LeetCode 690. 员工的重要性(哈希表、深度优先搜索dfs)

时间:2024-08-26 10:54:41浏览次数:15  
标签:690 int dfs 员工 哈希 Employee id

题目:690. 员工的重要性

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

思路:先用哈希表map将每个员工的信息映射到员工ID对应的下标位置。接着使用深度优先搜索dfs,来记录总和即可。细节看注释

/*
// Definition for Employee.
class Employee {
public:
    int id;
    int importance;
    vector<int> subordinates;
};
*/

class Solution {
public:
	//哈希表
    unordered_map<int,Employee*> mp;
    int dfs(int id){
        Employee * tmp=mp[id];
        int sum=tmp->importance;
        for(auto x:tmp->subordinates){
            sum+=dfs(x);
        }
        return sum;
    }
    int getImportance(vector<Employee*> employees, int id) {
    	//将每个员工的信息映射到员工ID对应的下标位置
        for(auto x:employees){
            mp[x->id]=x;
        }
        //深度优先搜索dfs
        return dfs(id);
    }
};

标签:690,int,dfs,员工,哈希,Employee,id
From: https://blog.csdn.net/weixin_46028214/article/details/141557383

相关文章

  • [RT-Thread记录]DFS虚拟文件系统文件夹操作异常
    项目场景:系统:RT-Thread5.0.2硬件:STM32H743问题描述1.文件系统打开文件夹再关闭后,申请的内存没有释放2.elm-fatFs文件系统重复操作同一个文件夹,如复制,会引起系统崩溃原因分析:        DFS虚拟文件系统文件打开关闭逻辑错误,文件系统版本升级更新后,dfs_file结......
  • 牛客小白月赛99 C-迷宫(DFS)
    题目描述给定一个n×m\mathrm{n\timesm}n×m的迷宫,迷宫由"#"与"."两种字符组成。其中"#"代表障碍物,"."表示空地。迷宫中还有一个起点"S"和一个终点"E",它们都可以视为空地。 由于近期迷宫发生了塌方,导致起点和终点之间可能并不连通。幸运的是,你拥有一种超能......
  • P10690 Fotile 模拟赛 L 题解
    题目传送门前置知识可持久化字典树|分块思想解法考虑分块预处理整块的答案,散块直接暴力。设\(f_{i,j}\)表示以\(i\)所在的块的左端点为左端点,\(j\)为右端点的最大异或和,可持久化01-Trie维护即可。本题中这种写法比处理整块到整块的答案更容易处理些。整块的答案......
  • 3.4 hash(哈希)
    hash(哈希)hsetkeyfieldvaluehgetkeyfieldhgetallinfohmgetkeyfield1field2...hincrbykeyfieldnumber专门用于结构化的数据信息。对应的就是map/结构体结构:键key:{ 域field:值value, 域field:值value, 域field:值value,}(1)设置指定键的属性......
  • AcWing 1078. 旅游规划 (DFS找树的直径+直径中点性质求解,无DP)
    原题链接题目描述算法引用自树的直径-OI-Wiki:若树上所有边边权均为正,则树的所有直径中点重合证明:使用反证法。设两条中点不重合的直径分别为\(\delta(s,t)与\delta(s',t')\),中点分别为\(x\)与\(x'\)。显然,\(\delta(s,x)=\delta(x,t)=\delta(s',x')=\delta(......
  • 关于DensiStak™ 板对板连接器:10169063-5002100LF、10169063-5602100LF、10169064-500
    系列概述该DensiStak™板对板连接器是高密度连接器,采用双梁接触系统,可确保可靠性能。该连接器采用11排设计(具有多达1034个引脚位置)和开放式引脚现场设计,可提高灵活性。DensiStak连接器具有高达16Gb/s的高速性能,符合PCIe®Gen4、以太网、USB、DP和MIPI协议。DensiStak板对板连......
  • day7哈希表 454.四数相加II |383. 赎金信|15. 三数之和 |18. 四数之和
    454.四数相加IIclassSolution{publicintfourSumCount(int[]nums1,int[]nums2,int[]nums3,int[]nums4){//前两数相加,key是合,次数是value,跟后两数相加的和等于0的话,就取出map里的次数。//两个forloop时间复杂度n方。intres=0;......
  • DFS查找依赖路径并按依赖层级展示生产的数据
    背景有如下场景://定义结构体deptypedepModelstruct{Srcstring`json:"src"`Dependstring`json:"depend"`}//示例输入deps:=[]depModel{{"A","B"},{"A","F"},{&q......
  • Python 开发中,使用bcrypt 或 Passlib 对系统用户密码进行哈希和验证处理
    在设计一个系统的时候,肯定都有会有用户身份认证的问题,一般对用户校验的时候,都是对用户存在数据库总的密码哈希值进行判断,从而避免密码泄露和反向解密,那么在Python开发中,我们可以引入bcrypt或Passlib对系统用户密码进行哈希和验证处理,以及介绍使用其他类库实现常规加解密处理操......
  • 密码学之哈希算法
    文章目录1.哈希函数概述1.1哈希函数的定义1.2哈希函数的重要性2.SHA系列算法简介2.1SHA系列的发展历史2.2SHA系列的应用场景3.主要SHA算法详解3.1MD5算法3.2SHA-1算法3.3SHA-2算法家族3.4SHA-3算法4.SHA算法的安全性分析4.1安全性的重要性4.2已知的攻击......