Golang | Leetcode Golang题解之第437题路径总和III

题目:

题解:

Go 复制代码
func pathSum(root *TreeNode, targetSum int) (ans int) {
    preSum := map[int64]int{0: 1}
    var dfs func(*TreeNode, int64)
    dfs = func(node *TreeNode, curr int64) {
        if node == nil {
            return
        }
        curr += int64(node.Val)
        ans += preSum[curr-int64(targetSum)]
        preSum[curr]++
        dfs(node.Left, curr)
        dfs(node.Right, curr)
        preSum[curr]--
        return
    }
    dfs(root, 0)
    return
}
相关推荐
玛丽莲茼蒿20 小时前
Leetcode hot100 【中等】括号生成
算法·leetcode·职场和发展
小欣加油20 小时前
leetcode 128 最长连续序列
c++·算法·leetcode·职场和发展
pwn蒸鱼21 小时前
leetcode:92. 反转链表 II
算法·leetcode·链表
ulias21221 小时前
leetcode热题 - 2
算法·leetcode·职场和发展
XMYX-021 小时前
06 - Go 的切片、字典与遍历:从原理到实战
后端·golang
Q741_1471 天前
每日一题 3740. 三个相等元素之间的最小距离 I 3741. 三个相等元素之间的最小距离 II 模拟 哈希表 C++ 题解
c++·算法·leetcode·模拟·数组·哈希表
alphaTao1 天前
LeetCode 每日一题 2026/4/6-2026/4/12
python·算法·leetcode
独孤--蝴蝶1 天前
leetcode-动态规划三种问题的异同点
算法·leetcode·动态规划
人道领域1 天前
【LeetCode刷题日记】:从 LeetCode 经典题看哈希表的场景化应用---数组、HashSet、HashMap 选型与算法实战
算法·leetcode·面试
承渊政道1 天前
【优选算法】(实战攻坚BFS之FloodFill、最短路径问题、多源BFS以及解决拓扑排序)
数据结构·c++·笔记·学习·算法·leetcode·宽度优先