[JS]二叉树中是否存在节点和为指定值的路径

二叉树中是否存在节点和为指定值的路径

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

DFS算法遍历
要考虑的边界情况主要是当前节点是否为叶子节点,必须要确保左右自节点均为null。
否则会出现{1,2}1结果为true的情况。

function hasPathSum( root ,  sum ) {
    // write code here
    if(!root) return false

    return search(root,sum)
}
function search(root,sum){

    if(!root.left&&!root.right){
        return sum==root.val
    }

    if(root.left&&search(root.left,sum-root.val)){
        return true
    }

    if(root.right&&search(root.right,sum-root.val)){
        return true
    }
    return false
}
全部评论

相关推荐

点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-05 10:13
已编辑
HHHHaos:让这些老登来现在秋招一下,简历都过不去
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务