题目链接
英文链接:https://leetcode.com/problems/unique-binary-search-trees/
中文链接:https://leetcode-cn.com/problems/unique-binary-search-trees/
题目详述
给定一个整数 n,求以 1 … n 为节点组成的二叉搜索树有多少种?
示例:
1 | 输入: 3 |
英文链接:https://leetcode.com/problems/unique-binary-search-trees/
中文链接:https://leetcode-cn.com/problems/unique-binary-search-trees/
给定一个整数 n,求以 1 … n 为节点组成的二叉搜索树有多少种?
示例:
1 | 输入: 3 |
英文链接:https://leetcode.com/problems/maximum-difference-between-node-and-ancestor/
中文链接:https://leetcode-cn.com/problems/maximum-difference-between-node-and-ancestor/
给定二叉树的根节点 root
,找出存在于不同节点 A
和 B
之间的最大值 V
,其中 V = |A.val - B.val|
,且 A
是 B
的祖先。
(如果 A 的任何子节点之一为 B,或者 A 的任何子节点是 B 的祖先,那么我们认为 A 是 B 的祖先)
示例:
1 | 输入:[8,3,10,1,6,null,14,null,null,4,7,13] |
提示:
2
到 5000
之间。0
到 100000
之间。英文链接:https://leetcode.com/problems/insert-delete-getrandom-o1/
中文链接:https://leetcode-cn.com/problems/insert-delete-getrandom-o1/
设计一个支持在平均 时间复杂度 O(1) 下,执行以下操作的数据结构。
insert(val)
:当元素 val 不存在时,向集合中插入该项。remove(val)
:元素 val 存在时,从集合中移除该项。getRandom
:随机返回现有集合中的一项。每个元素应该有相同的概率被返回。示例 :
1 | // 初始化一个空的集合。 |
英文链接:https://leetcode.com/problems/contains-duplicate-iii/
中文链接:https://leetcode-cn.com/problems/contains-duplicate-iii/
给定一个整数数组,判断数组中是否有两个不同的索引 i 和 j,使得 nums [i] 和 nums [j] 的差的绝对值最大为 t,并且 i 和 j 之间的差的绝对值最大为 ķ。
示例 1:
1 | 输入: nums = [1,2,3,1], k = 3, t = 0 |
示例 2:
1 | 输入: nums = [1,0,1,1], k = 1, t = 2 |
示例 3:
1 | 输入: nums = [1,5,9,1,5,9], k = 2, t = 3 |
英文链接:https://leetcode.com/problems/increasing-order-search-tree/
中文链接:https://leetcode-cn.com/problems/increasing-order-search-tree/
给定一个树,按中序遍历重新排列树,使树中最左边的结点现在是树的根,并且每个结点没有左子结点,只有一个右子结点。
示例 :
1 | 输入:[5,3,6,2,4,null,8,1,null,null,null,7,9] |
提示:
英文链接:https://leetcode.com/problems/maximum-depth-of-n-ary-tree/
中文链接:https://leetcode-cn.com/problems/maximum-depth-of-n-ary-tree/
给定一个 N 叉树,找到其最大深度。
最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。
例如,给定一个 3叉树
:
我们应返回其最大深度,3。
说明:
1000
。5000
。英文链接:https://leetcode.com/problems/find-largest-value-in-each-tree-row/
中文链接:https://leetcode-cn.com/problems/find-largest-value-in-each-tree-row/
您需要在二叉树的每一行中找到最大的值。
示例:
1 | 输入: |
英文链接:https://leetcode.com/problems/find-bottom-left-tree-value/
中文链接:https://leetcode-cn.com/problems/find-bottom-left-tree-value/
给定一个二叉树,在树的最后一行找到最左边的值。
示例 1:
1 | 输入: |
示例 2:
1 | 输入: |
注意: 您可以假设树(即给定的根节点)不为 NULL。
英文链接:https://leetcode.com/problems/sum-root-to-leaf-numbers/
中文链接:https://leetcode-cn.com/problems/sum-root-to-leaf-numbers/
给定一个二叉树,它的每个结点都存放一个 0-9
的数字,每条从根到叶子节点的路径都代表一个数字。
例如,从根到叶子节点路径 1->2->3
代表数字 123
。
计算从根到叶子节点生成的所有数字之和。
说明: 叶子节点是指没有子节点的节点。
示例 1:
1 | 输入: [1,2,3] |
示例 2:
1 | 输入: [4,9,0,5,1] |
英文链接:https://leetcode.com/problems/spiral-matrix-ii/
中文链接:https://leetcode-cn.com/problems/spiral-matrix-ii/
给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。
示例:
1 | 输入: 3 |