package main import . "nc_tools" /* * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } */ /** * * @param root TreeNode类 * @param sum int整型 * @return bool布尔型 */ func hasPathSum( root *TreeNode , sum int ) bool { // write code here if root == nil { return false } var dfs func(root *TreeNode, tmp int) bool dfs = func(root *TreeNode, tmp int) bool { if root == nil { return false } tmp += root.Val if root.Right == nil && root.Left == nil && tmp == sum { return true } return dfs(root.Left, tmp) || dfs(root.Right, tmp ) } return dfs(root, 0) }