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

【代码随想录day 16】 力扣 513.找树左下角的值

视频讲解:https://www.bilibili.com/video/BV1424y1Z7pn/?vd_source=a935eaede74a204ec74fd041b917810c
文档讲解:https://programmercarl.com/0513.%E6%89%BE%E6%A0%91%E5%B7%A6%E4%B8%8B%E8%A7%92%E7%9A%84%E5%80%BC.html#%E6%80%9D%E8%B7%AF
力扣题目:https://leetcode.cn/problems/find-bottom-left-tree-value/

这道题需要注意的是找的是二叉树最后一行的最左节点的值,所以要找最大深度,我们先遍历左子树,再遍历右子树,当最大深度改变时result才会改变,所以在遍历过程中必先遇到左节点,就是我们要找的值。

class Solution {
public://初始化最大深度和结果int maxDepth = INT_MIN;int result;void traversal(TreeNode *root, int depth){//判断中止条件,如果找到叶子节点就结束if(root->left == NULL && root->right == NULL){//如果深度比最大深度还大,更新最大深度if(depth > maxDepth){maxDepth=depth;result = root->val;}return;}//遍历左子树if(root->left){//深度+1depth++;//递归traversal(root->left, depth);//需要遍历其他路径,因此要回溯depth--;}//遍历右子树if(root->right){//深度+1depth++;//递归traversal(root->right, depth);//需要遍历其他路径,因此要回溯depth--;}return;}int findBottomLeftValue(TreeNode* root) {traversal(root, 0);return result;}
};
http://www.dtcms.com/a/324389.html

相关文章:

  • 米哈游笔试——求强势顶点的个数
  • [python] typing 中的overload
  • Android视图回调机制:从post到ViewTreeObserver,从源码分析到最佳实践
  • MariaDB 数据库管理
  • 基于PyTorch一文讲清楚损失函数与激活函数并配上详细的图文讲解
  • Pytorch深度学习框架实战教程12:Pytorch混合精度推理,性能加速147%的技术实现
  • MPLS对LSP连通性的检测
  • 使用Blender可视化多传感器坐标系转换
  • 移动端常见的8大css兼容性问题和处理方法
  • #Linux内存管理# 浅析缺页中断中私有映射且发生写时复制COW的工作原理
  • 《Qt————Tcp通讯》
  • 容器网络隔离测试于VPS服务器环境的桥接模式验证
  • Docker 详细介绍及使用方法
  • 【大智慧数据】心智开花的时候
  • 数字图像处理3
  • 三、k8s 1.29 之 安装1网络 / ikuai路由器虚拟机安装
  • 【嵌入式】Linux的常用操作命令(2)
  • 防御保护10
  • AI优化SEO关键词实战应用
  • Java数据结构——LinkedList
  • scanpy单细胞转录组python教程(一):不同形式数据读取
  • Python爬虫实战:研究BlackWidow,构建最新科技资讯采集系统
  • Shell脚本-条件判断语法格式
  • React Profiler
  • 【代码随想录day 15】 力扣 404. 左叶子之和
  • 【无标题】命名管道(Named Pipe)是一种在操作系统中用于**进程间通信(IPC)** 的机制
  • Ubuntu 安装 Elasticsearch
  • Ubuntu 安装 Kibana
  • WGS84 与 ITRF 坐标系的差异及转换算法详解
  • 进程状态+进程优先级+进程上下文切换解读