当前位置: 首页 > 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.xdnf.cn/news/1274599.html

相关文章:

  • Linux 路由子系统深度分析:框架、实现与代码路径
  • MariaDB 数据库管理
  • 活动策划(展会、年会),在线工具能快速出邀请函不?
  • Python 实例属性和类属性
  • 为wordpress顶部header.php文件中调用不同的标题和摘要
  • H3C(基于Comware操作系统)与eNSP平台(模拟华为VRP操作系统)的命令差异
  • Shell脚本-了解i++和++i
  • 堆(Java实现)
  • Spark学习(Pyspark)
  • 整数规划-分支定界
  • 【软件测试】BUG篇 — 详解
  • ATF(TF-A)安全通告 TFV-13(CVE-2024-7881)
  • 33.搜索旋转排序数组
  • ECharts 的理解和简单应用笔记
  • Gin vs Beego vs Echo:三大主流 Go Web 框架深度对比
  • 使用Blender可视化多传感器坐标系转换
  • sqli-labs-master/Less-51~Less-61
  • 文件 IO
  • MySQL 子查询
  • 大模型时代的机器人研究趋势:从多模态融合到高效迁移
  • Flutter 与 Android NDK 集成实战:实现高性能原生功能
  • wordpress文章摘要调用的3种方法
  • AI(1)-神经网络(正向传播与反向传播)
  • String AOP、事务、缓存
  • Java数据结构——LinkedList
  • Python与MySQL数据库交互实践:自动化数据插入系统
  • Radiology:经颅交流电刺激调节轻度阿尔茨海默病皮层与海马功能连接
  • 【Docker实战】将Django应用容器化的完整指南
  • YOLOv8算法改进--通过yaml文件添加注意力机制【附代码】
  • 从Redisson源码角度深入理解Redis分布式锁的正确实现