![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
qq_42325416
这个作者很懒,什么都没留下…
展开
-
LeetCode 102.对称二叉树(Java,递归法,非递归法)
题目描述原创 2020-08-13 17:38:03 · 136 阅读 · 0 评论 -
LeetCode 96.不同的二叉搜索树(Java,动态规划、卡塔兰数)
题目描述解法1-动态规划解题思路:给定一个有序序列1⋯n1\cdots n1⋯n,为了构建一棵二叉树,我们可以遍历每个数字 iii,将该数字作为树根,然后将1⋯(i−1)1\cdots (i-1)1⋯(i−1)作为根结点的左子树,将(i+1)⋯n(i+1)\cdots n(i+1)⋯n作为根结点的右子树。由于每次遍历根结点是不同的,所以可以保证构造的每棵二叉树都是唯一的。定义两个函数:G(n)G(n)G(n):长度为nnn的序列能构造的不同二叉树的个数;F(i,n)F(i,n)F(i,n):以原创 2020-08-05 17:07:10 · 121 阅读 · 0 评论 -
LeetCode 94.二叉树的中序遍历(Java,递归法,非递归法,莫里斯遍历)
题目描述解法1-递归法解题思路:递归法的思路比较简单,就是先遍历左子树,然后访问根结点,然后再遍历右子树。/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { pri原创 2020-08-05 15:35:07 · 251 阅读 · 0 评论 -
LeetCode 98.验证二叉搜索树(Java,递归法,中序遍历法)
文章目录题目描述解法1-递归法解法2-中序遍历法题目描述给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。解法1-递归法解题思路:根据二叉搜索树的特点我们可以知道,根结点的左子树的所有结点的值都小于根结点的值,即根结点的值是左子树值的上界;根结点的右子树的所有结点的值都大于根结点的值,即根结点的值是左子树值的下界。受此启发,我们可以设计一个函原创 2020-08-06 17:23:59 · 134 阅读 · 0 评论