题解 | #二叉树中和为某一值的路径(一)#

二叉树中和为某一值的路径(一)

http://www.nowcoder.com/practice/508378c0823c423baa723ce448cbfd0c


function hasPathSum( root ,  sum ) {
    // write code here
    if(!root) return false;
//     递归法
    return dfs(root,sum-root.val)
    
    function dfs(node,num){
//         如果计数为0,并且遇到叶子节点,返回true
        if(num==0 && !node.left && !node.right) return true;
        //遇到叶子节点,如果计数不为0,并且返回false 
        if(!node.left && !node.right) return false ;
//         否则,继续左右子节点分别递归
        if(node.left && dfs(node.left, num-node.left.val)) return true;
        if(node.right && dfs(node.right,num-node.right.val)) return true;
        return false;
    }
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务