1、递归

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:def hasPathSum(self, root: TreeNode, targetSum: int) -> bool:# 空节点if not root:return False# 叶子节点if not root.left and not root.right:return targetSum == root.val# 每搜索一个节点从sum中减去节点值return self.hasPathSum(root.left,targetSum-root.val) or self.hasPathSum(root.right,targetSum-root.val)

2、广度优先搜索

使用两个队列:

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:def hasPathSum(self, root: TreeNode, targetSum: int) -> bool:if not root:return False# 两个队列,一个存节点,一个存根节点到此节点的节点值之和que_node = collections.deque([root])que_val = collections.deque([root.val])while que_node:node = que_node.popleft()nodeval = que_val.popleft()if not node.left and not node.right:if nodeval == targetSum:return Trueif node.left:que_node.append(node.left)que_val.append(nodeval+node.left.val)if node.right:que_node.append(node.right)que_val.append(nodeval+node.right.val)return False

一个队列:

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:def hasPathSum(self, root: TreeNode, targetSum: int) -> bool:if not root:return False# 一个队列存节点以及根节点到此节点的和que_node = collections.deque([(root,root.val)])while que_node:node,nodeval = que_node.popleft()if not node.left and not node.right:if nodeval == targetSum:return Trueif node.left:que_node.append((node.left,nodeval+node.left.val))if node.right:que_node.append((node.right,nodeval+node.right.val))return False

LeetCode 112 路径总和 python3相关推荐

  1. C++描述 LeetCode 112. 路径总和

    C++描述 LeetCode 112. 路径总和   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客,唯一博客更 ...

  2. LeetCode 112. 路径总和 、113. 路径总和 II 思考分析

    目录 112. 路径总和 题目 递归解 递归解,其他人的解法 迭代解,其他人的解法 113. 路径总和 II 题目 递归解 递归解,参考别人的思路 112. 路径总和 题目 给定一个二叉树和一个目标和 ...

  3. leetcode 112路径总和

    leetcode 112 其实leetcode上的题解和评论都很好的,找题解不用到csdn来,我是想把自己做过的题都记录下来才来写这个 class Solution {public:bool hasP ...

  4. 53. Leetcode 112. 路径总和 (二叉树-二叉树路径和)

    给你二叉树的根节点 root 和一个表示目标和的整数 targetSum .判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum .如果存在,返回 tr ...

  5. Leetcode 112. 路径总和 (每日一题 20210910)

    给你二叉树的根节点 root 和一个表示目标和的整数 targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum .叶子节点 是指没有子 ...

  6. [leetcode]112.路径总和

    给你二叉树的根节点 root 和一个表示目标和的整数 targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum . 叶子节点 是指没有 ...

  7. LeetCode 112路径总和-简单

    给你二叉树的根节点 root 和一个表示目标和的整数 targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum . 叶子节点 是指没有 ...

  8. 49 - 算法 - Leetcode 112 路径总和 -二叉树递归 带参数一起递归

    // 感觉都是那几个固定的格式 寻找临时 单前树 状态输入减小 int sum递减 //树递归 所带的参数也递归减少class Solution {public:bool hasPathSum(Tre ...

  9. LeetCode——113 路径总和 II(JAVA)

    给你二叉树的根节点 root和一个整数目标和 targetSum,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径. 叶子节点 是指没有子节点的节点. 示例 1: 输入:root = [5, ...

最新文章

  1. linux+Qt 下利用D-Bus进行进程间高效通信的三种方式
  2. vue页面数据不显示_PHP7中session_start 使用注意事项,会导致浏览器刷时页面数据不更新...
  3. OpenAI开源机器人模拟Python库mujoco-py:可高效处理并行模拟
  4. spark (java API) 在Intellij IDEA中开发并运行
  5. 美好生活从java开始
  6. 阿里巴巴有一群全年无休从不领工资的高智商员工
  7. Android --- 怎么设置 EditText 控件中光标默认位置,当 EditText 里有文字的时候,光标跑到了最前面
  8. django drf Filter
  9. python 会议室预约系统解决方案_会议预约管理系统解决方案
  10. java实现代理服务器
  11. 什么样的网页适合使用框架
  12. POJ-3311 Hie with the Pie
  13. Who is the lion(谁是狮子)!
  14. 联想笔记本怎么找计算机放桌面,联想笔记本电脑便签在哪,笔记本电脑便签在哪里?...
  15. 网站备案其实是服务器备案,国内服务器为什么需要备案?国外服务器备案吗?
  16. paddle实现语音转文字
  17. Centos 6.9 Install dubbokeeper
  18. 再谈 Go 语言在前端的应用前景
  19. JAVA实现基于k-means聚类算法实现微博舆情热点分析系统
  20. ArcGIS Engine开发教程之图层符号化(四)——符号化之Renderer( 渲染)体系

热门文章

  1. PyTorch中nn.ReLU(inplace=True)中inplace=True有什么用
  2. TrackRay:打造一款自己的渗透测试框架
  3. 基于RNN实现垃圾邮件辨别
  4. 读书笔记-《赢在用户:Web人物角色创建和应用实践指南》
  5. 多项式:从什么都不知道到门都没入
  6. python gui是什么_python gui是什么?
  7. 【04】SAP ABAP性能优化 - 如何选用内表类型(STANDARD, SORTED, HASHED)?
  8. 一个比较全的C++农历算法
  9. python微博爬虫代码_python 微博爬虫 示例源码(lxml)
  10. R 数字 字符 向量