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

力扣labuladong——一刷day59

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、力扣549. 二叉树中最长的连续序列
  • 二、力扣1325. 删除给定值的叶子节点


前言


像求和、求高度这种基本的二叉树函数很容易写,有时候只要在它们的后序位置添加一点代码,就能得到我们想要的答案。

一、力扣549. 二叉树中最长的连续序列

/*** Definition for a binary tree node.* public 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;*     }* }*/
class Solution {int res = 0;public int longestConsecutive(TreeNode root) {fun(root);return res;}public int[] fun(TreeNode root){if(root == null){return new int[]{0,0};}int[] left = fun(root.left);int[] right = fun(root.right);int leftInc = left[0], leftDes = left[1];int rightInc = right[0], rightDes = right[1];int curInc = 1, curDes = 1;if(root.left != null){if(root.left.val -1 == root.val){curInc += leftInc;}if(root.left.val + 1 == root.val){curDes += leftDes;}}if(root.right != null){if(root.right.val - 1 == root.val){curInc = Math.max(curInc,rightInc+1);}if(root.right.val + 1 == root.val){curDes = Math.max(curDes, rightDes+1);}}res = Math.max(res, curInc + curDes -1);return new int[]{curInc,curDes};}
}

二、力扣1325. 删除给定值的叶子节点

/*** Definition for a binary tree node.* public 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;*     }* }*/
class Solution {public TreeNode removeLeafNodes(TreeNode root, int target) {if(root == null){return null;}if(root.left == null && root.right == null){if(root.val == target){return null;}}TreeNode left = removeLeafNodes(root.left,target);TreeNode right = removeLeafNodes(root.right,target);if(left == null && right == null){if(root.val == target){return null;}}root.left = left;root.right = right;return root;}
}
http://www.lryc.cn/news/247925.html

相关文章:

  • 接口性能测试 —— Jmeter并发与持续性压测
  • redis报错3
  • Proteus的网络标号与总线
  • 4、stable diffusion
  • LeetCode51. N-Queens
  • 前端vue3——html2canvas给网站截图生成宣传海报
  • C语言实现串的部分算法
  • UE5、CesiumForUnreal实现加载GeoJson绘制多面(MultiPolygon)功能(支持点选高亮)
  • pandas教程:USDA Food Database USDA食品数据库
  • 0基础学习VR全景平台篇第122篇:VR视频剪辑和输出 - PR软件教程
  • ucharts中,当数据为0时,不显示
  • React函数组件渲染两次
  • 人工智能 - 图像分类:发展历史、技术全解与实战
  • go标准库
  • 【Web安全】拿到phpMyAdmin如何获取权限
  • Python与GPU编程快速入门(一)
  • C语言--每日选择题--Day29
  • ESP32:物联网时代的神器
  • docker和docker-compose生产的容器,不在同一个网段,解决方式
  • 基于JavaWeb+SSM+Vue校园综合服务小程序系统的设计和实现
  • 私域运营:资源盘点及争取策略
  • 图书管理系统源码,图书管理系统开发,图书借阅系统源码整体功能演示
  • (C++)字符串相乘
  • 1992-2021年区县经过矫正的夜间灯光数据(GNLD、VIIRS)
  • RK3568笔记六:基于Yolov8的训练及部署
  • 【活动回顾】sCrypt在柏林B2029开发者周
  • 【SpringBoot3+Vue3】六【完】【番外篇】- (0-1临摹)
  • 生成式AI与大语言模型,东软已经准备就绪
  • Python爬虫遇到重定向URL问题时如何解决?
  • 【点云surface】无序点云快速三角化