①,题目:
力扣690. 员工的重要性https://leetcode-cn.com/problems/employee-importance/
②,代码:
class Solution {
public int allImportance=0;
public int getImportance(List<Employee> employees, int id) {
for (Employee e:employees){
//1,找到当前id的Employee
if (e.id==id){
allImportance+=e.importance;
//3,终止递归
// 存在一次递归结束过程的情况,所以返回结果allImportance。
if (e.subordinates.size()==0)
return allImportance;
//2,找到当前id的下属
for (int i:e.subordinates) {
getImportance(employees,i);
}
}
}
return allImportance;
}
}
③,运行: