#leetcode

LeetCode(109):有序链表转换二叉搜索树

Medium!题目描述:给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例:给定的有序链表:[-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这...

LeetCode(108):将有序数组转换为二叉搜索树

Easy!题目描述:将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例:给定有序数组:[-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜...

LeetCode(107): 二叉树的层次遍历 II

Easy!题目描述:给定一个二叉树,返回其节点值自底向上的层次遍历。(即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)例如:给定二叉树 [3,9,20,null,null,15,7],3/920/157返回其自底向上的层次遍历为:[[15,7],[9,20],[3]]解题思路:从底部层序遍历其实还是从...

LeetCode(106):从中序与后序遍历序列构造二叉树

Medium!题目描述:根据一棵树的中序遍历与后序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出中序遍历inorder= [9,3,15,20,7]后序遍历postorder=[9,15,7,20,3]返回如下的二叉树:3/920/157解题思路:这道题要求从中序和后序遍历的结果来重建原二叉树...

LeetCode(105):从前序与中序遍历序列构造二叉树

Medium!题目描述:根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历preorder= [3,9,20,15,7]中序遍历inorder=[9,3,15,20,7]返回如下的二叉树:3/920/157解题思路:这道题要求用先序和中序遍历来建立二叉树,由于先序...

LeetCode(104):二叉树的最大深度

Easy!题目描述:给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],3/920/157返回它的最大深度 3。解题思路:求二叉树的最大深度问题用到深...
代码星球 ·2021-02-16

LeetCode(103): 二叉树的锯齿形层次遍历

Medium!题目描述:给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。例如:给定二叉树 [3,9,20,null,null,15,7],3/920/157返回锯齿形层次遍历如下:[[3],[20,9],[15,7]]解题思路:这道二叉树...

LeetCode(102):二叉树的层次遍历

Medium!题目描述:给定一个二叉树,返回其按层次遍历的节点值。(即逐层地,从左到右访问所有节点)。例如:给定二叉树: [3,9,20,null,null,15,7],3/920/157返回其层次遍历结果:[[3],[9,20],[15,7]]解题思路:层序遍历二叉树是典型的广度优先搜索BFS的应用,但是这...
代码星球 ·2021-02-16

LeetCode(101):对称二叉树

Easy!题目描述:给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。1/22//3443但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:1/2233说明:如果你可以运用递归和迭代两种方法解决这个问题,会很...
代码星球 ·2021-02-16

LeetCode(100):相同的树

Easy!题目描述:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入:11//2323[1,2,3],[1,2,3]输出:true示例2:输入:11/22[1,2],[1,null,2]输出:false示例 3:输入:1...
代码星球 ·2021-02-16

LeetCode(99):恢复二叉搜索树

Hard!题目描述:二叉搜索树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。示例 1:输入:[1,3,null,null,2] 1 / 3  2输出:[3,1,null,null,2] 3 / 1 &n...
代码星球 ·2021-02-16

LeetCode(98): 验证二叉搜索树

Medium!题目描述:给定一个二叉树,判断其是否是一个有效的二叉搜索树。一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例 1:输入:2/13输出:true示例 2:输入:5/14 /&nbs...
代码星球 ·2021-02-16

LeetCode(97):交错字符串

Hard!题目描述:给定三个字符串 s1, s2, s3,验证 s3 是否是由 s1 和 s2 交错组成的。示例1:输入:s1="aabcc",s2="dbbca",s3="aadbbcbcac"输出:true示例 2:...
代码星球 ·2021-02-16

LeetCode(96): 不同的二叉搜索树

Medium!题目描述:给定一个整数 n,求以 1... n 为节点组成的二叉搜索树有多少种?示例:输入:3输出:5解释:给定n=3,一共有5种不同结构的二叉搜索树:13321///321132//2123解题思路:这道题实际上是 CatalanNumber卡塔兰数的一...
代码星球 ·2021-02-16

LeetCode(95): 不同的二叉搜索树 II

Medium!题目描述:给定一个整数 n,生成所有由1... n 为节点所组成的二叉搜索树。示例:输入:3输出:[ [1,null,3,2], [3,2,null,1], [3,1,null,null,2], [2,1,3], [1,nul...
首页上一页12345...下一页尾页