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

教育培训类网站建设模板视频互联网推广选择隐迅推

教育培训类网站建设模板,视频互联网推广选择隐迅推,卖花网站源码,3g门户网站官网题目: 给定一个二叉树root,返回其最大深度 二叉树的最大深度是指从根节点到最远叶子节点的最长路径上的节点数 方法一:深度优先搜索 知道了左子树和右子树的最大深度l和r,那么该二叉树的最大深度即为:max(l,r)1 而左子树和右子树的最大深…

题目:

给定一个二叉树root,返回其最大深度

二叉树的最大深度是指从根节点到最远叶子节点的最长路径上的节点数


方法一:深度优先搜索

知道了左子树和右子树的最大深度l和r,那么该二叉树的最大深度即为:max(l,r)+1

而左子树和右子树的最大深度又可以以同样的方式进行计算。因此可以用「深度优先搜索」的方法来计算二叉树的最大深度。具体而言,在计算当前二叉树的最大深度时,可以先递归计算出其左子树和右子树的最大深度,然后在O(1)时间内计算出当前二叉树的最大深度。递归在访问到空节点时退出。

# 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 maxDepth(self, root):""":type root: Optional[TreeNode]:rtype: int"""if root is None:return 0else:left_height=self.maxDepth(root.left)right_height=self.maxDepth(root.right)return max(left_height,right_height)+1

时间复杂度:O(n)n为二叉树节点的个数。每个节点在递归中只被遍历一次。

空间复杂度:O(height)其中height表示二叉树的高度


方法二:广度优先搜索

广度优先搜索的队列里存放的是「当前层的所有节点」。每次拓展下一层的时候,用一个变量ans来维护拓展的次数,该二叉树的最大深度即为ans。

# 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 maxDepth(self, root):""":type root: Optional[TreeNode]:rtype: int"""if not root:return 0queue=[root] #使用一个队列(queue)来进行广度优先搜索, 初始时包含根节点 ans=0while queue: #在队列不为空时持续进行。每次循环表示遍历树的一层size=len(queue)  #获取当前队列中节点的数量,即当前层的节点数while size>0:node=queue.pop(0)if node.left:queue.append(node.left) #当前节点 node 有左子节点,就将左子节点加入队列if node.right:queue.append(node.right)#当前节点 node 有右子节点,就将右子节点加入队列size-=1  #处理完当前节点,减少层内节点计数ans+=1 #层处理完,增加深度计数器return ans

时间复杂度:O(n)每个节点只会被访问一次

空间复杂度:O(n)取决于队列存储的元素数量

源自力扣官方题解

http://www.dtcms.com/wzjs/295586.html

相关文章:

  • 创业开网站建设公司营销策划书范文1000字
  • 外发加工网是真的吗杭州seo网站
  • 用dw做淘宝网站武汉seo优化公司
  • 用阿里云和大淘客做网站凡科建站的免费使用
  • diy网站建设关联词有哪些五年级
  • 适合个人做的网站有哪些东西吗公司推广方法有哪些
  • 做网站宽度和长度布局长春网站优化咨询
  • 大学学风建设专题网站网站建设策划书
  • 环境建设公司属于什么企业外贸seo建站
  • 临沭县住房和城乡建设局网站什么软件可以排名次
  • 南昌网站建设公司cps广告是什么意思
  • 江苏网站建设定制奶茶店营销软文
  • 360摄像头海澳門地区限制解除宿州百度seo排名软件
  • 网站建设基本常识seo薪酬水平
  • 玉田网站制作公司网络推广方案
  • 做钢材的网站有哪些安徽360优化
  • php网站开发代做百度软件优化排名
  • 长沙市建设网站深圳竞价托管公司
  • 企业软件解决方案网站seo文章
  • 什么网站是做电机控制的114外链
  • 廊坊网站建设推广郑州seo线上推广技术
  • 怎么做代购网站广东seo推广方案
  • 华人国际婚恋网站建设方案网站建设公司网站
  • 做家具定制的设计网站今日头条新闻消息
  • 网站开发的话术seo查询网站是什么
  • 大观网站建设上海seo怎么优化
  • 网站防封链接怎么做镇江关键字优化公司
  • 企业做网站的作用免费的网站推广平台
  • 做网站电信运营许可证百度一下app下载安装
  • 网站建设公司的业务范围苏州网站建设公司