LeetCode 582
来源:互联网 发布:淘宝达人链接 编辑:程序博客网 时间:2024/06/05 07:18
map+队列,因为PID的父类不会继承多个PPID,所以我们可以用PPID作为键值,把PPID的孩子们都找到存在Map中,KILL某个进程时,依次把它的孩子进程也杀死即可,因此存在队列中
public List<Integer> killProcess(List<Integer> pid, List<Integer> ppid, int kill) { Map<Integer,List<Integer>> map = new HashMap<>(); for (int i = 0; i < ppid.size(); i++){ map.computeIfAbsent(ppid.get(i), k -> new ArrayList<Integer>()).add(pid.get(i)); } List<Integer> ans = new ArrayList<>(); Queue<Integer> queue = new LinkedList<>(); queue.offer(kill); while (!queue.isEmpty()){ int target = queue.poll(); ans.add(target); if (map.containsKey(target)){ List<Integer> tmp = map.get(target); for (int num : tmp){ queue.offer(num); } } } return ans; }
阅读全文
0 0
- LeetCode 582
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode
- leetcode:
- leetcode:
- LeetCode
- leetcode
- LEETCODE
- leetcode
- leetCode
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode:
- JAVA-1046. 划拳(15)
- ASP.NET MVC三种创建方式
- 深度学习笔记——Word2vec和Doc2vec应用举例:词和句子的相似度计算
- A*算法解决八数码问题 Java语言实现
- Digit Counts 解题报告
- LeetCode 582
- 递归算法—输入字母逆序输出&汉诺塔递归算法
- 创建https请求
- 竖式问题
- 虚拟地址到物理地址的转换
- CodeForces
- (转)Ubuntu使用教程:E: 无法获得锁 /var/lib/apt/lists/lock
- EOJ 3247 铁路修复计划 (最小生成树+二分)
- HDU 4586 Play the Dice(概率入门)