1.编辑器

我使用的是win10+vscode+leetcode+python3
环境配置参见我的博客:
链接

2.第一百零四题

(1)题目
英文:
Given a binary tree, find its maximum depth.

The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.

Note: A leaf is a node with no children.

中文:
给定一个二叉树,找出其最大深度。

二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。

说明: 叶子节点是指没有子节点的节点。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/maximum-depth-of-binary-tree

(2)解法
① 使用DFS(depth first search)(耗时:64ms,内存:16M)
应用了回溯和递归

class Solution:def maxDepth(self, root: TreeNode) -> int:result = 0def maxdepthsearch(root):if root== None:return 0depth1 = maxdepthsearch(root.left)depth2 = maxdepthsearch(root.right)depth = max(depth1,depth2)+1return depthresult = maxdepthsearch(root)return result

② 使用队列BFS(breadth first search)
(耗时:52ms,内存:14.8M)
应用了队列

class Solution:def maxDepth(self, root: TreeNode) -> int:if root is None:return 0queue = collections.deque()queue.append(root)lenth = 0while queue:lenth += 1for i in range(len(queue)):node = queue.popleft()if node.left is not None:queue.append(node.left)if node.right is not None:queue.append(node.right)return lenth

注意:
1.collections.deque()创建的队列的形式是这样的:deque([])。
2.node = queue.popleft()node是pop出来的值,而queue是pop掉最左边值后的新队列。

有关DFS和BFS的区别,这篇博客写得很生动:
博客

leetcode python3 简单题104. Maximum Depth of Binary Tree相关推荐

  1. leetcode python3 简单题111. Minimum Depth of Binary Tree

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第一百一十一题 (1)题目 英文: Given a binary tree, fin ...

  2. 【LeetCode 剑指offer刷题】树题4:104 Maximum Depth of Binary Tree

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 104. Maximum Depth of Binary Tree Given a binary tree, fin ...

  3. LC 104. Maximum Depth of Binary Tree

    1.题意 104. Maximum Depth of Binary Tree Easy 98540 Given a binary tree, find its maximum depth. The m ...

  4. 【LeetCode】104. Maximum Depth of Binary Tree (2 solutions)

    Maximum Depth of Binary Tree  Given a binary tree, find its maximum depth. The maximum depth is the ...

  5. leetcode python3 简单题53. Maximum Subarray

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第五十三题 (1)题目 英文: Given an integer array num ...

  6. LeetCode: 104. Maximum Depth of Binary Tree

    题目 Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the l ...

  7. leetcode 104. Maximum Depth of Binary Tree

    Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the long ...

  8. 【leetcode】104. Maximum Depth of Binary Tree

    1. 题目 Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along th ...

  9. [swift] LeetCode 104. Maximum Depth of Binary Tree

    Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the long ...

最新文章

  1. 雅虎向阿里巴巴示好原因有二
  2. php execute 更新不变,php – Doctrine executeUpdate数组参数
  3. [C]Ubuntu 13.04实现NVIDIA双显卡切换
  4. Csv数据库CsvDb
  5. L1-038 新世界 (5 分)—团体程序设计天梯赛
  6. asp.net使用Mysql乱码处理
  7. 基于Java+MySQL的GPS定位学生在线人脸考勤签到系统
  8. UI组件DevExpress WinForm入门指南 - DialogService服务
  9. 帝国CMS仿3500游戏源码大气H5游戏门户网站模板源码
  10. Unity2D 简易2D地图 —— 地图的显示
  11. try的动词用法_try的用法都有什么
  12. 能装linux的嵌入式,试试一张软盘可装下Linux(嵌入式Linux)
  13. 制作stlink(烧录部分)
  14. HTML设计简单的教务管理系统
  15. 第十次 Java作业
  16. 根据财务指标的量化交易策略
  17. OFD转PDF(免费、不限次数、极速、安全)
  18. 推荐几个好用无门槛的工具网站-搜搜工具箱
  19. ggplot2日期时间标度的设置
  20. nginx mysql 网页显示_Win10+Python+Django+Nginx+MySQL开发教程及实例(3)——Nginx运行html网页...

热门文章

  1. 计算机管理员账户不能创建新的用户名,win10为什么无法更改账户名称解决方法 win10系统管理员用户名更改...
  2. springboot改文件头_SpringBoot配置文件常用配置示例
  3. ios 动画 隐藏tabbar_iOS_自定义转场TabBar的隐藏动画
  4. hnu 暑期实训之蛇形矩阵
  5. workbench设置单元坐标系_ANSYS经典案例在Workbench中实现分享连载(三)
  6. 数据分析之Pandas VS SQL!
  7. 《南溪的目标检测学习笔记》——预训练微调的学习笔记
  8. PostgreSQL and SQLAlchemy [ubuntu]
  9. 【Qt教程】2.3 - Qt5 控件 - 按钮组(QPushButton、QToolButton、QRadioButton、QCheckBox)资源编辑器导入资源
  10. 树莓派3b接收USB串口数据并解析处理