leetcode hot100

437. 路径总和 III

已解答

中等

相关标签

相关企业

给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum路径 的数目。

路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。

简单算法是遍历一遍所有节点,然后去搜索这个节点开始的所有路径的总和是不是符合条件

Definition for a binary tree node.

class TreeNode(object):

def init(self, val=0, left=None, right=None):

self.val = val

self.left = left

self.right = right

class Solution(object):

def pathSum(self, root, targetSum):

"""

:type root: Optional[TreeNode]

:type targetSum: int

:rtype: int

"""

self.ret = 0

if root:

queue = [root]

else:

queue=[]

def dfs(tmp,targetSum):

if tmp==None:

return 0

else:

if tmp.val == targetSum:

self.ret+=1

dfs(tmp.left,targetSum-tmp.val)

dfs(tmp.right,targetSum-tmp.val)

while len(queue):

tmp = queue[0]

x1 = dfs(tmp,targetSum)

del queue[0]

if tmp.left:

queue.append(tmp.left)

if tmp.right:

queue.append(tmp.right)

return self.ret

难的办法没看懂

相关推荐
hillstream3几秒前
从这次xAI重组说开去--用类比的思维来理解
人工智能·算法·xai·elon.mask
菜鸡儿齐3 分钟前
leetcode-最长连续序列
数据结构·算法·leetcode
寻寻觅觅☆3 分钟前
东华OJ-基础题-120-顺序的分数(C++)
开发语言·c++·算法
Tisfy7 分钟前
LeetCode 3713.最长的平衡子串 I:计数(模拟)
算法·leetcode·题解·模拟
月疯7 分钟前
陀螺仪和加速度计(模拟状态,计算运动状态)
算法
Σίσυφος190012 分钟前
双目立体视觉 数学推导(从 F → E → R,T)
算法
Hcoco_me21 分钟前
目标追踪概述、分类
人工智能·深度学习·算法·机器学习·分类·数据挖掘·自动驾驶
熬了夜的程序员27 分钟前
【LeetCode】117. 填充每个节点的下一个右侧节点指针 II
java·算法·leetcode
一叶之秋141240 分钟前
基石之力:掌握 C++ 继承的核心奥秘
开发语言·c++·算法
拾光Ծ43 分钟前
【优选算法】滑动窗口算法:专题一
c++·算法·滑动窗口·c++算法·滑动窗口算法·笔试面试