
leetcode
文章平均质量分 76
刷题不能停!!
焱齿
tencent
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
98、验证二叉搜索树
代码中只是单纯的 判断 root节点的左孩子(存在的话)小于root、root节点的右孩子(存在的话)大于root;因为,我们要确保右子树的所有节点都大于根节点、左子树的左右节点都小于根节点;上述写法只是确保右子树的根节点确实符合顺序,但是右子树中完全可能有其左子树的节点小于root。即记录前一个遍历到的节点,拿当前遍历到的节点同记录的前一个节点进行比较(记得更新即可)。对于二叉搜索树类的题目最重要的特性就是他的中序遍历序列是单调递增的。要求:给一个二叉树,判断是否是一个有效的二叉搜索树。原创 2024-10-06 16:16:10 · 393 阅读 · 0 评论 -
763、划分字母空间
(总共26个字母)。(6)以"ababcbacadefegdehijhklij"为例。①当我们遍历到第一个字符a的时候该片段右边界至少要到小标8,好在0~8中出现的字符并没有谁最后一次出现的位置超过8,所以第一个片段就是[0,8];②继续遍历下面的d,此时该片段的右边界至少到下标14;但是在遍历到[9,14]中的小标10的e时候,就不得不把右边界扩展到包含下标为15的e。以此类推。原创 2024-09-12 21:41:59 · 339 阅读 · 0 评论 -
96、不同的二叉搜索树
h(n)表示以1~n为头结点的二叉树种类数,显然有: G(n) = h(1) + h(2) + h(3)。集合BST特性知:。2、以第i个元素为根节点时其对应的个数=[1, i-1]个元素构成的左子树种类 * [i+1, n]构成右子树种类。即:dp[3] = dp[0]*dp[2] + dp[1]*dp[1] + dp[2]*dp[0]此时其右子树是由{2,3}两个数构成的BST.其实 这里的右子树{2,3}完全可以看成{1,2}因为{1,2}构成的BST和{2,3}构成的BST的个数是完全一样的!原创 2024-07-18 15:48:42 · 938 阅读 · 0 评论