当前位置: 首页 > news >正文

力扣(2024.08.10)

1. 222:完全二叉树的节点个数

# 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 countNodes(self, root: Optional[TreeNode]) -> int:def dfs(node, res):if not node:returnres.append(node.val)dfs(node.left, res)dfs(node.right, res)res = []dfs(root, res)return len(res)

 2. 404:左叶子之和

# 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 sumOfLeftLeaves(self, root: Optional[TreeNode]) -> int:def dfs(node, res, isleft):if not node:returnif isleft and not node.left and not node.right:res.append(node.val)dfs(node.left, res, True)dfs(node.right, res, False)res = []isleft = Falsedfs(root, res, isleft)return sum(res)

3. 513:找树左下角的值

# 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 findBottomLeftValue(self, root: Optional[TreeNode]) -> int:def dfs(node, level, res):if not node:returnif len(res) == level:res.append([])res[level].append(node.val)dfs(node.left, level + 1, res)dfs(node.right, level + 1, res)res = []level = 0dfs(root, level, res)return res[-1][0]

4. 112:路径总和

# 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: Optional[TreeNode], targetSum: int) -> bool:def dfs(node, path, res):if not node:path.append('None')returnpath.append(node.val)if not node.left and not node.right:res.append(sum(path))dfs(node.left, path, res)path.pop()dfs(node.right, path, res)path.pop()res = []path = []dfs(root, path, res)if targetSum in res:return Truereturn False

 5. 113:路径总和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 pathSum(self, root: Optional[TreeNode], targetSum: int) -> List[List[int]]:def dfs(node, path, res):if not node:path.append("None")returnpath.append(node.val)if not node.left and not node.right:res.append(path.copy())dfs(node.left, path, res)path.pop()dfs(node.right, path, res)path.pop()res = []path = []dfs(root, path, res)final_res = []for i in res:if sum(i) == targetSum:final_res.append(i)return final_res

6. 700:二叉搜索树中的搜索

# 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 searchBST(self, root: Optional[TreeNode], val: int) -> Optional[TreeNode]:def dfs(node, val, res):if not node:returnif node.val == val:res.append(node)returnelif node.val > val:dfs(node.left, val, res)elif node.val < val:dfs(node.right, val, res)res = []dfs(root, val, res)return res[0] if res else None

http://www.lryc.cn/news/420041.html

相关文章:

  • Django-文件上传
  • [Meachines] [Easy] valentine SSL心脏滴血+SSH-RSA解密+trp00f自动化权限提升+Tmux进程劫持权限提升
  • 利用单张/多张图内参数标定 OpenCV Python
  • The Llama 3 Herd of Models 第7部分视觉实验部分全文
  • 亚信安慧AntDB-T:使用Brin索引提升OLAP查询性能以及节省磁盘空间
  • web渗透测试常用命令
  • Kylin系列(二)使用
  • CI/CD——CI持续集成实验
  • 2.4 大模型数据基础:预训练阶段数据详解 ——《带你自学大语言模型》系列
  • Kali Linux——网络安全的瑞士军刀
  • UML建模-测试用例
  • Python知识点:如何使用Socket模块进行网络编程
  • 培训第二十一天(mysql用户创建与授权、角色创建)
  • makefile基本语法
  • 白骑士的PyCharm教学实战项目篇 4.4 大数据处理与分析
  • 无人机之民用无人机用途分类篇
  • Android10 修改设备名称
  • go testing 包
  • 基于phpstudy的靶场搭建和github加速
  • 【数据结构】Map与Set
  • Flamingo: a Visual Language Model for Few-Shot Learning
  • flume性能调优
  • mysql 字符串转数组
  • UE基础 —— 术语
  • kubernets学习笔记——使用kubeadm构建kubernets集群及排错
  • 简述MYSQL聚簇索引、二级索引、索引下推
  • 电脑开机后出现bootmgr is missing原因及解决方法
  • 2024 年 7 月公链行业研报:市场波动中 Solana 表现抢眼,Layer 2 竞争白热化
  • Python查缺補漏
  • c++的类和对象(中):默认成员函数与运算符重载(重难点!!)