news 2026/4/3 4:53:19

day151—双端队列—找树左下角的值(LeetCode-513)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
day151—双端队列—找树左下角的值(LeetCode-513)

题目描述

给定一个二叉树的根节点root,请找出该二叉树的最底层 最左边节点的值。

假设二叉树中至少有一个节点。

示例 1:

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

示例 2:

输入:[1,2,3,4,null,5,6,null,null,7]输出:7

提示:

  • 二叉树的节点个数的范围是[1,104]
  • -231 <= Node.val <= 231 - 1

解决方案:

这段代码的核心功能是找到二叉树最底层最左侧的节点值,采用「层序遍历(BFS)+ 优先入队右子节点」的技巧实现,时间复杂度O(n)n为节点数),空间复杂度O(n)(队列存储节点开销),是该问题的简洁高效解法。

核心逻辑

代码利用队列实现层序遍历,但通过调整子节点入队顺序(先右后左),让最后遍历到的节点恰好是 “最底层最左侧” 的节点,无需记录层数:

  1. 初始化
    • 用双端队列deq存储待遍历节点,初始加入根节点;
    • ans记录结果,初始化为根节点值(兜底空树 / 单节点场景);
  2. 层序遍历循环:只要队列非空,持续遍历:
    • 取出队列头部节点node,并更新ans为该节点的值;
    • 核心技巧:先将右子节点入队,再将左子节点入队(改变常规的 “先左后右” 顺序);
  3. 返回结果:遍历结束时,ans最后一次更新的值就是 “最底层最左侧” 节点的值(因为先遍历右节点,最后遍历到的必然是最底层最左节点)。

总结

  1. 核心思路:通过「先右后左」的入队顺序,让层序遍历的最后一个节点就是 “最底层最左侧” 节点,无需统计层数或记录每一层的第一个节点;
  2. 关键细节:队列遍历采用 “取头→更新结果→右子入队→左子入队” 的顺序,保证遍历到最底层时,最后一个节点是最左侧的;
  3. 效率特点:每个节点仅入队 / 出队一次,时间O(n);队列空间开销取决于树的宽度(最坏为最后一层节点数),是该问题的最优解法之一。

函数源码:

/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {} * }; */ class Solution { public: int findBottomLeftValue(TreeNode* root) { deque<TreeNode*> deq={root}; int ans=root->val; while(!deq.empty()){ TreeNode* node=deq.front(); deq.pop_front(); ans=node->val; if(node->right){ deq.push_back(node->right); } if(node->left){ deq.push_back(node->left); } } return ans; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/2 16:33:29

论文查重变得快速高效,8款AI辅助工具优缺点全面解析

在学术研究中&#xff0c;查重率作为衡量学术规范性的核心指标&#xff0c;既体现了对学术诚信的要求&#xff0c;也可能引发文本修改的困扰。为解决这一问题&#xff0c;现代技术发展提供了多种基于人工智能的文本优化工具&#xff0c;这些工具运用先进的自然语言处理算法&…

作者头像 李华
网站建设 2026/3/29 22:25:57

论文查重效率大幅提升,8款AI工具功能特点全面解析

在学术写作过程中&#xff0c;查重率往往成为研究者必须面对的关键指标&#xff0c;既反映了学术规范性要求&#xff0c;又可能带来修改压力。为有效应对这一挑战&#xff0c;当前已有多种智能辅助工具可供选择&#xff0c;能够帮助用户在保持学术严谨性的前提下优化文本原创性…

作者头像 李华
网站建设 2026/3/18 10:55:32

Hunyuan-HY-MT1.8B实战优化:max_new_tokens设置技巧详解

Hunyuan-HY-MT1.8B实战优化&#xff1a;max_new_tokens设置技巧详解 1. 引言&#xff1a;机器翻译中的生成长度控制挑战 在实际应用中&#xff0c;机器翻译模型的输出质量不仅取决于其架构和训练数据&#xff0c;还与推理阶段的关键参数配置密切相关。其中&#xff0c;max_ne…

作者头像 李华
网站建设 2026/3/26 8:21:09

收藏!中国高薪行业TOP1出炉,竟是AI行业(小白/程序员必看)

从事编程或想入行技术领域的朋友&#xff0c;不妨先看看这组中国高薪行业排行榜——榜首的位置&#xff0c;或许超出了不少人的预期&#xff0c;正是当下风口正盛的AI行业&#xff01;从数据来看&#xff0c;AI行业的年薪跨度直接拉满&#xff0c;达到了20万至800万&#xff0c…

作者头像 李华
网站建设 2026/4/2 23:46:56

IL-10信号在肿瘤免疫治疗中的双重角色及精准研究策略

一、IL-10/IL-10R信号通路在肿瘤免疫中的复杂性与研究背景 白细胞介素-10及其受体在肿瘤免疫微环境中扮演着复杂的双重角色。传统上&#xff0c;IL-10因其抑制抗原呈递细胞活化和促炎细胞因子产生的能力&#xff0c;被视为一种免疫抑制因子&#xff0c;常与肿瘤免疫逃逸相关。…

作者头像 李华
网站建设 2026/3/31 14:33:02

YOLOv12官版镜像训练600轮,稳定性表现令人惊喜

YOLOv12官版镜像训练600轮&#xff0c;稳定性表现令人惊喜 在实时目标检测领域&#xff0c;模型的精度、速度与训练稳定性一直是开发者关注的核心指标。随着YOLO系列持续演进&#xff0c;最新发布的 YOLOv12 官版镜像 不仅在架构上实现了从CNN到注意力机制的范式转移&#xff…

作者头像 李华