查找每个经理下的员工数量

2024年8月28日 | 阅读 4 分钟

员工及其老板在一个字典中被映射为一组(员工,经理)对,如下所示。

创建一个函数,返回每个经理在层级结构中拥有的总员工数量,而不仅仅是其直属下属。每个员工可能只向一位老板直接汇报。在上述词汇表中,根节点/CEO 被列为向自己汇报。

应生成一个包含以下词汇的输出字典。

这个问题可能有多种解答方式,但我发现它很有趣,所以想分享一下。

在第 2.b 步中,利用记忆(动态规划)来确定管理下的员工数量,使我们不必为每个单独的员工重复此过程。在下面的代码中,递归函数 populateResultUtil() 利用了记忆化,以避免对相同结果的重复计算。

C++ 代码

输出

result = {A=0, B=0, C=2, D=0, E=1, F=5}