559. N 叉树的最大深度(C++代码纠错)?

在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;
    }
};
阅读 1.7k
1 个回答
            if(q.front()->val>deep)deep=q.front()->val+1;
//                                                    ^^ 为啥 +1 ?
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题