题解 | #二叉树的深度#

二叉树的深度

https://www.nowcoder.com/practice/435fb86331474282a3499955f0a41e8b

lass Solution {
public:
    int TreeDepth(TreeNode* pRoot) {
        queue<TreeNode*> myqueue;
        vector<int> nodenumber={0};
        if (pRoot==NULL) return 0;
        else {
            myqueue.push(pRoot);
            nodenumber[1]=1;
        }
        int k=1;//从第一层开始
        bool havelevel=true;//此层有节点
        while(havelevel==true){
            int havenextlevel=0;
            for(int i=1;i<=nodenumber[k];i++){//遍历每一层的所有节点
                
                if(!myqueue.empty()){
                    TreeNode *first=myqueue.front();
                    if(first->left!=NULL){
                        myqueue.push(first->left);
                        nodenumber[k+1]++;
                        havenextlevel=1;
                    }
                    if(first->right!=NULL){
                        myqueue.push(first->right);
                        nodenumber[k+1]++;
                        havenextlevel=1;
                    }
                    myqueue.pop();
                }
            }
            if(havenextlevel==0){
                havelevel=false;
            }
            else{
                k++;
            }
        }
        return k;
    }
};
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 16:15
我应届生,去年10月份开始在这家公司实习,到今年10月份正好一年想(实习+试用期),在想要不要提前9月份就离职,这样好找工作些,但又差一个月满一年,又怕10月份国庆回来离职,容易错过了下半年的金九银十,到年底容易gap到年后
小破站_程序员YT:说这家公司不好吧,你干了快一年 说这家公司好吧,你刚毕业就想跑路说你不懂行情吧,你怕错过金九银十说 你懂行情吧,校招阶段在实习,毕业社招想换工作 哥们,我该怎么劝你留下来呢
应届生,你找到工作了吗
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-11 11:00
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务