在leetcode上提交的代码(如下)只通过一部分用例,没通过的用例都有一个特点——就是返回值比正确答案大1,查看很多案例代码,依旧未能看出自己的错处在哪,大神,i need your help!
class Solution {
public:
int maxDepth(Node* root) {
if(root==nullptr)return 0;
else root->val=1;
queue<Node*> q;
q.push(root);
int deep=1;
while(!q.empty()){
if(q.front()->children.size()!=0){
for(auto &i :q.front()->children){
q.push(i);
i->val=q.front()->val+1;
}
}
if(q.front()->val>deep)deep=q.front()->val+1;
q.pop();
}
return deep;
}
};