leetcode437.路径总和II

func pathSum(root *TreeNode, targetSum int) int {
    if root ==nil{
        return 0
    }
    
    renturn allPath(root,targetSum)+pathSum(root.Left,targetSum)+pathSum(root.Right,targetSum)

}

func allPathSum(root *TreeNode,targetSum int) int{
    if root==nil{
        return 0
    }
    cnt:=0
    
    if targetSum==root.Val{
        cnt++
    }
    cnt+=allPathSum(root.Left,targetSum-root.Val)
    cnt+=allPathSum(root.Right,targetSum-root.Val)
    return cnt
}

Last updated