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

leetcode0513. 找树左下角的值-meidum

1 题目:找树左下角的值

官方标定难度:中

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

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

示例 1:

在这里插入图片描述

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

示例 2:

在这里插入图片描述

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

提示:

二叉树的节点个数的范围是 [ 1 , 10 4 ] [1,10^4] [1,104]
− 2 31 < = N o d e . v a l < = 2 31 − 1 -2^{31} <= Node.val <= 2^{31} - 1 231<=Node.val<=2311

2 solution

深度优先搜索,先左后右,如果当前节点层数大于记录的层数,修改层数和值

代码

/*** 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 {int ans = 0, level = 0;void dfs(TreeNode *root, int l) {if(!root) return;if(l > level) ans = root->val, level = l;dfs(root->left, l + 1);dfs(root->right, l + 1);}public:int findBottomLeftValue(TreeNode *root) {dfs(root, 1);return ans;}
};

结果

在这里插入图片描述

http://www.lqws.cn/news/82063.html

相关文章:

  • 案例:TASK OA
  • unidbg patch 初探 微博deviceId 案例
  • vue中父子参数传递双向的方式不同
  • 如何提升大模型召回率和实战案例
  • 【数据分析】第二章 Python基础
  • 渗透测试之信息搜集
  • window/linux ollama部署模型
  • vscode中的markdown表格列宽
  • 【LeetCode 热题100】BFS/DFS 实战:岛屿数量 腐烂的橘子(力扣200 / 994 )(Go语言版)
  • Unity中的MonoSingleton<T>与Singleton<T>
  • Day10
  • leetcode刷题日记——二叉树的层次遍历
  • 全文索引详解及适用场景分析
  • 【Unity】云渲染
  • Ubuntu22.04 安装 CUDA12.8
  • 为什么ping显示connect:network is unreachable,如何排查网络不通问题?
  • 【数学 逆序对 构造】P12386 [蓝桥杯 2023 省 Python B] 混乱的数组|普及+
  • HTTP、WebSocket、SSE 对比
  • py爬虫的话,selenium是不是能完全取代requests?
  • 【Spring底层分析】Spring AOP基本使用+万字底层源码阅读分析
  • 使用 So-VITS-SVC 实现明星声音克隆与视频音轨替换实战全流程
  • windows11安装编译QtMvvm
  • Qt/C++编写GB28181服务端工具/绿色版开箱即用/对标wvp-gb28181/实时画面预览/录像回放下载
  • pikachu靶场通关笔记10 XSS关卡06-XSS之盲打
  • 结构型设计模式之装饰模式
  • C++string1号
  • NodeJS全栈WEB3面试题——P1基础知识:区块链与Web3原理
  • 腾答知识竞赛系统功能介绍
  • 【学习笔记】On the Biology of a Large Language Model
  • 《Effective Python》第六章 推导式和生成器——使用 yield from 组合多个生成器