员工的重要性(求树的节点值之和)

原题链接
思路分析:
我们可以将员工之间的关系抽象为一棵树,那么原题问的就是以 i d id id 为根节点的子树的所有节点的和。
定义函数的功能为:返回以 i d id id 为根节点的子树的所有节点的和。采用 D F S DFS DFS 便利便可求解。
C o d e : Code: Code:

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

class Solution {
public:
    int getImportance(vector<Employee*> employees, int id) {
        int ans = 0;
        for( auto C1 : employees ){
            if( C1->id == id ){
                ans += C1->importance;
                for( auto C2 : C1->subordinates ){
                    ans +=  getImportance(employees, C2); 
                }
            }
        }
        return ans;
    }
};
上一篇:spring-boot集成mybatis


下一篇:mysql分页查询