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

网站做优化需要哪些后台信息站长之家网站查询

网站做优化需要哪些后台信息,站长之家网站查询,做网站空间哪个好,网站模版调用标签教程题源:https://leetcode.cn/problems/minimum-depth-of-binary-tree/description/ 题目描述: 思路一: 使用 DFS 递归遍历的解法,每当遍历到一条树枝的叶子节点,就会更新最小深度,当遍历完整棵树后&#x…

题源:https://leetcode.cn/problems/minimum-depth-of-binary-tree/description/

题目描述:
在这里插入图片描述

思路一:
使用 DFS 递归遍历的解法,每当遍历到一条树枝的叶子节点,就会更新最小深度,当遍历完整棵树后,就能算出整棵树的最小深度。
代码如下:

# 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 __init__(self):# 记录最小深度(根节点到最近的叶子节点的距离)self.minDepthValue = float('inf')# 记录当前遍历到的节点深度self.currentDepth = 0def minDepth(self, root):""":type root: Optional[TreeNode]:rtype: int"""if root is None:return 0# 从根节点开始遍历self.traverse(root)return self.minDepthValuedef traverse(self, root):    if root is None:return None# 在二叉树的前序位置进入节点时增加当前深度self.currentDepth += 1# 如果当前节点是叶子节点,更新最小深度if root.left is None and root.right is None:self.minDepthValue = min(self.minDepthValue, self.currentDepth)self.traverse(root.left)self.traverse(root.right)# 在二叉树的后序位置离开节点时减少当前深度self.currentDepth -= 1

执行时间如下,可以看出,DFS算法速度较慢,因为该算法必须确切的知道每条树枝的深度(根节点到叶子节点的距离),才能找到最小的那个:
在这里插入图片描述

思路二:
使用 BFS 层序遍历的解法。按照 BFS 从上到下逐层遍历二叉树的特点,当遍历到第一个叶子节点时,就能得到最小深度。
代码如下:

# 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 minDepth(self, root):""":type root: Optional[TreeNode]:rtype: int"""if root is None:return 0q = deque([root])# root 本身就是一层, depth 初始化为1depth = 1while q:sz = len(q)# 遍历当前层的节点for _ in range(sz):cur = q.popleft()# 判断是否到达叶子节点if cur.left is None and cur.right is None:return depth# 将下一层节点加入队列if cur.left is not None:q.append(cur.left)if cur.right is not None:q.append(cur.right)# 增加深度depth += 1return depth

执行时间如下,由于 BFS 逐层遍历的逻辑,第一次遇到目标节点时,所经过的路径就是最短路径,算法可能并不需要遍历完所有节点就能提前结束:
在这里插入图片描述

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

相关文章:

  • 郑州网站建设哪家公司便宜谷歌浏览器下载手机版安卓官网
  • 网站频道规划网站快速排名推广软件
  • 北仑区生态湿地建设管委会网站公司网站开发费用
  • 武汉北京网站建设品牌营销策略论文
  • 网站建设相关新闻优化设计高中
  • 母婴用品购物网站制作市场营销活动策划方案
  • 公司网站页面百度高级搜索入口
  • 网站建设 翰臣科技公司网站seo关键词优化技巧
  • 外贸公司如何接单seo排名快速刷
  • 传媒公司 网站开发环球资源网官方网站
  • 网站已经备案更换主机郑州聚商网络科技有限公司
  • 龙岩做网站百度推广渠道代理
  • 免费营销型网站模版安徽seo人员
  • 企业网站建站费用学计算机哪个培训机构好
  • 你愿不愿意做我女朋友网站长沙官网seo收费
  • 外贸网站空间哪个好深圳宝安seo外包
  • 做阿里巴巴网站口碑超级优化大师下载
  • 网站建设顺德全网网站快速排名推广软件
  • 设计网站banner图片seo网站推广全程实例
  • 中信建设证券有限责任公司企业网站seo方案
  • 0基础学做网站人工智能培训班
  • 做网站的相关协议日本域名注册网站
  • 闵行网站制作公司网站搭建公司哪家好
  • html做网站经验技巧太原seo网络优化招聘网
  • 做外贸那个网站比较好临沧seo
  • 微信企业推广关键词优化如何做
  • 哈尔滨网站制作案例网络营销和传统营销的关系
  • 国美电器如何进行网站的建设与维护如何软件网站优化公司
  • 免费网站建站百度海南百度推广代理商
  • 推荐网站建设推广百度 营销推广是做什么的