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

如何把网站建设成营销型网站做电容元器件的网站有哪些

如何把网站建设成营销型网站,做电容元器件的网站有哪些,胖哥食品网站建设规范意见,vs2008做网站📌题目链接:LeetCode 515. 在每个树行中找最大值 题目描述 给定一棵二叉树的根节点 root,请找出该二叉树中每一层的最大值。 示例 示例 1 输入: root [1,3,2,5,3,null,9] 输出: [1,3,9]示例 2 输入: root [1,2,3] 输出: [1,3]思路分析 …

📌题目链接:LeetCode 515. 在每个树行中找最大值


题目描述

给定一棵二叉树的根节点 root,请找出该二叉树中每一层的最大值。


示例

示例 1

示例图1

输入: root = [1,3,2,5,3,null,9]
输出: [1,3,9]

示例 2

输入: root = [1,2,3]
输出: [1,3]

思路分析

本题需要找出每一层的最大值关键词是“每一层”,所以自然联想到可以用层数作为 key来记录。

整体思路是:

  • 使用一个哈希表HashMap<Integer, Integer>),记录每层的最大值。

    • key:层数

    • value:该层目前为止遇到的最大节点值

  • 采用**深度优先搜索(DFS)**遍历整棵树。

  • 在遍历过程中实时更新每一层的最大值。

  • 最后按照层数顺序,提取出结果。


代码实现

首先定义二叉树节点 TreeNode

class TreeNode {int val;TreeNode left;TreeNode right;TreeNode() {}TreeNode(int val) { this.val = val; }TreeNode(int val, TreeNode left, TreeNode right) {this.val = val;this.left = left;this.right = right;}
}

然后是主体解法:

import java.util.*;class Solution {// 用哈希表记录每层的最大值private Map<Integer, Integer> levelMax = new HashMap<>();public List<Integer> largestValues(TreeNode root) {dfs(root, 0);List<Integer> result = new ArrayList<>();for (int i = 0; i < levelMax.size(); i++) {result.add(levelMax.get(i));}return result;}private void dfs(TreeNode node, int level) {if (node == null) return;// 更新当前层最大值levelMax.put(level, Math.max(levelMax.getOrDefault(level, Integer.MIN_VALUE), node.val));// 递归遍历左右子树dfs(node.left, level + 1);dfs(node.right, level + 1);}
}

细节讲解

  • dfs(node, level) 方法中,每递归一层,level 加 1。

  • levelMax.getOrDefault(level, Integer.MIN_VALUE):如果当前层还没有记录,默认使用最小值。

  • 最后遍历 map,按层序输出。


复杂度分析

  • 时间复杂度:O(N),其中 N 是树中的节点个数,需要遍历每个节点一次。

  • 空间复杂度:O(H),H 为树的高度,主要是递归调用栈的空间。


小贴士:为什么可以用 DFS?

虽然找层次一般第一反应是 BFS(广度优先搜索),但其实 DFS 也能做,只要我们在递归过程中维护当前层数,一样能正确处理。

当然,如果用 BFS,会更直观一些,比如用队列按层遍历,每层取最大值,也是不错的方法。


总结

✅ 本题用 DFS + 哈希表 很轻松就能解决,重点是掌握:

  • 递归时带上层数信息

  • 每层维护最大值

如果想进一步练习,可以尝试用 BFS(广度优先遍历) 来做一版!


如果这篇文章对你有帮助,别忘了点个 赞👍收藏⭐ 支持一下呀!
有任何问题也欢迎在评论区交流~

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

相关文章:

  • 什么网站可以做音乐伴奏网站优化方案和实施
  • 富阳区建设局网站首页该网站尚未备案 腾讯云
  • 哪些网站用jsp网络哪家公司比较好
  • 网站退出率是什么意思做视频网站资质
  • 哪个网站上网好网站开发作品
  • 公司网站修改 优帮云网站被黑 百度跳转
  • 洛卡博网站谁做的风景网站模版
  • 乐站_网站建设_自助建站外国风格网站建设电话
  • 设置网站字体如何绑定网站域名
  • 外贸网站推广中山注册做网站的营业执照
  • 创建一个网站的创业计划书wordpress安卓版教程
  • 游戏咨询网站建设目标是什么给别人做网站别人经营违法
  • 青岛专业做外贸网站国家房产信息网官网
  • 做搜狗网站快速排名软长春做官网的公司
  • 做一家开发网站的公司简介东莞市民服务中心调整入场核验
  • 平湖模板网站建设公司接给别人做网站的活
  • 建站程序选择如何注册网站的名字
  • 个人作品网站策划书企业网站报备
  • 中英文双版网站怎么做织梦网站备案
  • 重庆专业网站建设怀化市优化办电话
  • 亦庄网站建设h5网站开发总结
  • 乘风专业建站湖南城乡建设部网站首页
  • 网站开发公司规章制度wordpress 腾讯cos
  • 哪些网站建设公司好一键生成app的软件
  • 莱州一中网站商业网站开发实训总结
  • 四会市网站建设苏州网站建设
  • 校园旅游网站建设方案策划书济宁网站建设seo
  • 网页模板网站推荐企业公示信息查询系统 江苏
  • 长沙做官方网站c2c电子商务网站
  • 网站区域名怎么注册威海网站优化公司