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: OptionalTreeNode

: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 = queue0

x1 = dfs(tmp,targetSum)

del queue0

if tmp.left:

queue.append(tmp.left)

if tmp.right:

queue.append(tmp.right)

return self.ret

难的办法没看懂

相关推荐
秋天的怀念_David41 分钟前
算法一千零一夜 · 作品相关:版权与致谢声明
程序人生·算法·学习方法
揽星河..1 小时前
【C语言】数组
c语言·开发语言·算法
careathers1 小时前
【数据结构】基于比较的排序算法 - 选择排序
数据结构·算法·排序算法
听风若依1 小时前
C++模板初阶
c++·算法
纪念 2292 小时前
C++ 算法(模拟)
开发语言·c++·算法
揽星河..2 小时前
【C语言】函数
c语言·算法
zwc32104320552 小时前
Day 2:图像内存、数据类型与stride
c++·人工智能·opencv·算法·计算机视觉
重生之小比特2 小时前
【算法拾光】模拟|提莫攻击 + N 字形变换
算法·模拟
東隅已逝,桑榆非晚3 小时前
AVL数实现
c++·笔记·学习·算法
驭渊的小故事3 小时前
LeetCode 算法题解:滑动窗口与数组合并的实战应用
算法·leetcode·职场和发展