首页 > 编程语言 >代码随想录算法训练营第十五天 | Javascript | 继续二叉树的一天 | 力扣Leetcode | 补 [501、236、235]

代码随想录算法训练营第十五天 | Javascript | 继续二叉树的一天 | 力扣Leetcode | 补 [501、236、235]

时间:2024-09-20 11:22:47浏览次数:3  
标签:题目 随想录 节点 二叉树 235 二叉 第十五天 链接

目录

前言

简介

题目链接:501. 二叉搜索树中的众数

题目链接:236. 二叉树的最近公共祖先

题目链接:235. 二叉搜索树的最近公共祖先


前言

踏平坎坷成大道,斗罢艰险又出发!

自律的尽头是自控,自控的尽头是硬控

愿道友们披荆斩棘,终能得偿所愿。

简介

本人是小几年经验的前端开发,算法基础只有力扣几十道题,非常薄弱。

今天是个人的代码随想录算法硬控自己第15天,继续补二叉树,冲!

题目链接:501. 二叉搜索树中的众数

题目链接:236. 二叉树的最近公共祖先

题目链接:235. 二叉搜索树的最近公共祖先

这题注意利于二叉树的特性。

如果当前检查的节点在p,q右边,那就只需要检查当前节点的左子树的节点。

如果当前检查的节点在p,q左边,那就只需要检查当前节点的右子树的节点。

剩下的情况就是当前检查的节点在p,q之间,那就相当于找到了结果,直接向上返回。

标签:题目,随想录,节点,二叉树,235,二叉,第十五天,链接
From: https://blog.csdn.net/RayLobeCode/article/details/142311820

相关文章

  • 代码随想录 -- 二叉树 -- 把二叉搜索树转换为累加树
    538.把二叉搜索树转换为累加树-力扣(LeetCode)思路:定义pre变量用来记录当前节点的前一个节点(右中左顺序遍历)的值。递归出口:当root为空时,return。单层递归逻辑:(右中左)右:self.tra(root.right)中:令root的值为它本身加上pre,更新pre为当前root的值;左:self.tra(root.left)class......
  • 代码随想录 -- 二叉树 -- 将有序数组转换为二叉搜索树
    108.将有序数组转换为二叉搜索树-力扣(LeetCode)思路:(注意题目要求是平衡二叉树!!!)递归出口:当传入数组为空时,返回空。单层递归逻辑:找到数组中间的值,令其为root,数组左边为root的左子树,数组右边为root的右子树。最后返回root。classSolution(object):defsortedArrayTo......
  • 代码随想录 -- 二叉树 -- 修剪二叉搜索树
     669.修剪二叉搜索树-力扣(LeetCode)思路:递归出口:当root为空时,返回空。当root的值比low小时,如果root没有右子树,直接返回空;否则返回trimBST(root.right,low,high)。当root的值比high大时,如果root没有左子树,直接返回空;否则返回trimBST(root.left,low,high)。单层递归逻辑:......
  • 代码随想录算法 - 回溯算法2
    之前做题给的题解都太混乱了,我决定好好按照思路写题解。题目139.组合总和给你一个无重复元素的整数数组candidates和一个目标整数target,找出candidates中可以使数字和为目标数target的所有不同组合,并以列表形式返回。你可以按任意顺序返回这些组合。candidate......
  • 代码随想录刷题day13 | LeetCode 110.平衡二叉树 257. 二叉树的所有路径 404.左叶子之
    110.平衡二叉树力扣题目链接后序遍历求高度,高度判断是否平衡|LeetCode:110.平衡二叉树1.三元运算符:(?:)condition?expression_if_true:expression_if_false;前面是条件,如果符合就等于冒号前的expression_if_true,反之则是后面的。2.如果要使用if(!node->left),要......
  • 代码随想录算法训练营,9月19日 | 39. 组合总和,40.组合总和II,131.分割回文串
    39.组合总和题目链接:39.组合总和文档讲解︰代码随想录(programmercarl.com)视频讲解︰组合总和日期:2024-09-19想法:组合总和类型题,允许重复使用元素,递归不+1就行。Java代码如下:classSolution{List<Integer>path=newArrayList<>();List<List<Integer>>res=n......
  • 代码随想录总结篇
    数组一般是排序以及索引问题链表翻转,重组,环问题哈希(map)hash暂存结果实现时间复杂度缩小字符串翻转,kmp算法,最长公共序列双指针快慢指针,左右指针栈队列先入先出后入先出二叉树二叉树dfs,bfsdfs计算深度高度二叉搜索树相关问题回溯递归三部曲参数返回值,终止条......
  • 正式一刷代码随想录-day01
    数组T35 搜索插入位置1.想清楚边界,是否需要left<=right2.想清楚如果没有找到的几种情况,有没有遗漏的情况。3.此题需要注意返回的不可超过边界值。T34  在排序数组中查找元素的第一个和最后一个位置1.分析题目:三种情况:1.target不在数组大小的范围内2.在范围内但不在数......
  • Day18 二叉树part08| LeetCode 669. 修剪二叉搜索树 , 108.将有序数组转换为二叉搜索树
    669.修剪二叉搜索树669.修剪二叉搜索树classSolution{publicTreeNodetrimBST(TreeNoderoot,intlow,inthigh){if(root==null)returnnull;//处理节点值<low的情况:当前节点及其左子树的所有节点都不在范围内,继续在其右子树上修......
  • 代码随想录算法 - 回溯算法1
    题目177.组合给定两个整数n和k,返回范围[1,n]中所有可能的k个数的组合。你可以按任何顺序返回答案。示例1:输入:n=4,k=2输出:[[2,4],[3,4],[2,3],[1,2],[1,3],[1,4],]示例2:输入:n=1,k=1输出:[[1]]提示:1<=n<=201<=k<=......