0
点赞
收藏
分享

微信扫一扫

力扣222. 完全二叉树的节点个数(JavaScript)

五殳师兄 2022-02-16 阅读 75
var countNodes = function(root) {
    if(root===null){
        return 0
    }
    let left=root.left
    let right=root.right
    let len1=0  //左子树的深度初始化
    let len2=0   //右子树的深度初始化
    while(left){
        left=left.left
        len1++
    }
    while(right){
        right=right.right
        len2++
    }
    //满二叉树
    if(len1==len2){
        return Math.pow(2,len1+1)-1
    }
    //如果不是满二叉树,则分开查找到每个子树的满二叉树(注意加上根节点)
    return countNodes(root.left)+countNodes(root.right)+1
};
举报

相关推荐

0 条评论