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

长沙flash网站设计百度关键词推广怎么收费

长沙flash网站设计,百度关键词推广怎么收费,网站建设教程论坛,代客做网站给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。(注意题意) 示例 1: 输入:root [3,9,20,null,null,15,7] 输出&#x…

给定一个二叉树,找出其最小深度。
最小深度是从根节点最近叶子节点的最短路径上的节点数量。
说明:叶子节点是指没有子节点的节点。(注意题意)
示例 1:
image.png
输入:root = [3,9,20,null,null,15,7]
输出:2

层序遍历法
# 层序遍历法
class Solution(object):def minDepth(self, root):""":type root: TreeNode:rtype: int"""if not root:return 0queue = deque([(root, 1)]) # 每个元素是元组 一个是树元素值 一个是最小深度 比较巧妙while queue:cur, min_depth = queue.popleft()if not cur.left and not cur.right:return min_depthif cur.left:queue.append((cur.left, min_depth+1))if cur.right:queue.append((cur.right, min_depth+1))return 0

时间复杂度:O(N) 因为每个结点会访问一次
空间复杂度:O(N)在层序遍历法中空间复杂度主要取决于队列的开销,队列中的元素个数不会超过树的节点数。

递归法

注意这块和最大深度不一样,如下是错误代码:说明:叶子节点是指没有子节点的节点。(注意题意)
image.png
这个代码就犯了此图中的误区:说明:叶子节点是指没有子节点的节点。(注意题意)
image.png
如果这么求的话,没有左孩子的分支会算为最短深度。
所以,如果左子树为空,右子树不为空,说明最小深度是 1 + 右子树的深度。
反之,右子树为空,左子树不为空,最小深度是 1 + 左子树的深度。 最后如果左右子树都不为空,返回左右子树深度最小值 + 1 。
image.png

# 递归法
class Solution(object):def minDepth(self, root):""":type root: TreeNode:rtype: int"""return self.getDepth(root)def getDepth(self, node):if node is None:return 0leftDepth = self.getDepth(node.left)  # 左rightDepth = self.getDepth(node.right)  # 右# 中# 当一个左子树为空,右不为空,这时并不是最低点if node.left is None and node.right is not None:return 1 + rightDepth# 当一个右子树为空,左不为空,这时并不是最低点if node.left is not None and node.right is None:return 1 + leftDepthresult = 1 + min(leftDepth, rightDepth)return result

时间复杂度:O(N),其中 N 是树的节点数。对每个节点访问一次。
空间复杂度:O(N)/O(H) 其中 H 是树的高度。空间复杂度主要取决于递归时栈空间的开销,最坏情况下,树呈现链状,空间复杂度为 O(N)。平均情况下树的高度与节点数的对数正相关,空间复杂度为 O(log⁡N)

参考:
https://www.programmercarl.com/0111.%E4%BA%8C%E5%8F%89%E6%A0%91%E7%9A%84%E6%9C%80%E5%B0%8F%E6%B7%B1%E5%BA%A6.html

http://www.fp688.cn/news/141533.html

相关文章:

  • wordpress的图片主题西安网站排名优化培训
  • 大连模板建站代理站长统计官网
  • 网站建设拓客有什么方法关键词搜索名词解释
  • 情感网站seoseo入门版
  • 网站关键词添加后的后果怎样做好竞价推广
  • 想自己做点飘纱素材到网站上买自学seo能找到工作吗
  • 网站首页三张海报做多大长沙seo就选智优营家
  • 做拼多多代运营网站江阴网站优化公司
  • 58兼职网站建设靠谱吗青岛网站推广企业
  • 湖北省税务局网站建设方百度指数官方版
  • 网站的seo后台怎么做今天最新新闻摘抄
  • 网站起域名原则名片seo什么意思
  • 物流公司网站方案百度平台营销
  • 网站开发有哪几类yandex网站推广
  • 韶关做网站的网站关键词推广工具
  • 佛山市企业网站seo营销工具如何自己做一个软件
  • 虚拟主机做网站百度问答兼职怎么做
  • 前端电商网站开发周期搜索引擎优化的内部优化
  • 济南制作网站软件一键优化大师下载
  • 重庆市城乡建设与发展委员会网站西安百度推广开户
  • 泰州网站建设服务好百度推广话术全流程
  • 防腐木用什么名字做网站沈阳seo顾问
  • 哈尔滨市建设网站网站建设服务商
  • 网站建设如何弄链接上海网络推广培训学校
  • 做网站 工商 非法经营国际国内新闻最新消息今天
  • 番禺网站开发技术网页设计是干嘛的
  • 网站建设图标素材免费网站分析案例
  • 网站规划的内容网络营销策划方案范文
  • 网站建设有哪些风险培训网登录入口
  • 做最好最全的命理网站网络营销的推广方式