Jerring


  • 首页

  • 标签

  • 分类

  • 归档

LeetCode96-不同的二叉搜索树

发表于 2019-05-27 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/unique-binary-search-trees/

中文链接:https://leetcode-cn.com/problems/unique-binary-search-trees/

题目详述

给定一个整数 n,求以 1 … n 为节点组成的二叉搜索树有多少种?

示例:

1
2
3
4
5
6
7
8
9
10
输入: 3
输出: 5
解释:
给定 n = 3, 一共有 5 种不同结构的二叉搜索树:

1 3 3 2 1
\ / / / \ \
3 2 1 1 3 2
/ / \ \
2 1 2 3
阅读全文 »

LeetCode1026-节点与其祖先之间的最大差值

发表于 2019-05-26 | 分类于 LeetCode

题目链接

英文链接: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 的祖先)

示例:

img

1
2
3
4
5
6
7
8
9
输入:[8,3,10,1,6,null,14,null,null,4,7,13]
输出:7
解释:
我们有大量的节点与其祖先的差值,其中一些如下:
|8 - 3| = 5
|3 - 7| = 4
|8 - 1| = 7
|10 - 13| = 3
在所有可能的差值中,最大值 7 由 |8 - 1| = 7 得出。

提示:

  1. 树中的节点数在 2 到 5000 之间。
  2. 每个节点的值介于 0 到 100000 之间。
阅读全文 »

LeetCode380-常数时间插入、删除和获取随机元素

发表于 2019-05-25 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/insert-delete-getrandom-o1/

中文链接:https://leetcode-cn.com/problems/insert-delete-getrandom-o1/

题目详述

设计一个支持在平均 时间复杂度 O(1) 下,执行以下操作的数据结构。

  1. insert(val):当元素 val 不存在时,向集合中插入该项。
  2. remove(val):元素 val 存在时,从集合中移除该项。
  3. getRandom:随机返回现有集合中的一项。每个元素应该有相同的概率被返回。

示例 :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// 初始化一个空的集合。
RandomizedSet randomSet = new RandomizedSet();

// 向集合中插入 1 。返回 true 表示 1 被成功地插入。
randomSet.insert(1);

// 返回 false ,表示集合中不存在 2 。
randomSet.remove(2);

// 向集合中插入 2 。返回 true 。集合现在包含 [1,2] 。
randomSet.insert(2);

// getRandom 应随机返回 1 或 2 。
randomSet.getRandom();

// 从集合中移除 1 ,返回 true 。集合现在包含 [2] 。
randomSet.remove(1);

// 2 已在集合中,所以返回 false 。
randomSet.insert(2);

// 由于 2 是集合中唯一的数字,getRandom 总是返回 2 。
randomSet.getRandom();
阅读全文 »

LeetCode220-存在重复元素III

发表于 2019-05-24 | 分类于 LeetCode

题目链接

英文链接: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
2
输入: nums = [1,2,3,1], k = 3, t = 0
输出: true

示例 2:

1
2
输入: nums = [1,0,1,1], k = 1, t = 2
输出: true

示例 3:

1
2
输入: nums = [1,5,9,1,5,9], k = 2, t = 3
输出: false
阅读全文 »

LeetCode897-递增顺序查找树

发表于 2019-05-23 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/increasing-order-search-tree/

中文链接:https://leetcode-cn.com/problems/increasing-order-search-tree/

题目详述

给定一个树,按中序遍历重新排列树,使树中最左边的结点现在是树的根,并且每个结点没有左子结点,只有一个右子结点。

示例 :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
输入:[5,3,6,2,4,null,8,1,null,null,null,7,9]

5
/ \
3 6
/ \ \
2 4 8
/ / \
1 7 9

输出:[1,null,2,null,3,null,4,null,5,null,6,null,7,null,8,null,9]

1
\
2
\
3
\
4
\
5
\
6
\
7
\
8
\
9

提示:

  1. 给定树中的结点数介于 1 和 100 之间。
  2. 每个结点都有一个从 0 到 1000 范围内的唯一整数值。
阅读全文 »

LeetCode559-N叉树的最大深度

发表于 2019-05-22 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/maximum-depth-of-n-ary-tree/

中文链接:https://leetcode-cn.com/problems/maximum-depth-of-n-ary-tree/

题目详述

给定一个 N 叉树,找到其最大深度。

最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。

例如,给定一个 3叉树 :

img

我们应返回其最大深度,3。

说明:

  1. 树的深度不会超过 1000。
  2. 树的节点总不会超过 5000。
阅读全文 »

LeetCode515-在每个树行中找最大值

发表于 2019-05-21 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/find-largest-value-in-each-tree-row/

中文链接:https://leetcode-cn.com/problems/find-largest-value-in-each-tree-row/

题目详述

您需要在二叉树的每一行中找到最大的值。

示例:

1
2
3
4
5
6
7
8
9
输入: 

1
/ \
3 2
/ \ \
5 3 9

输出: [1, 3, 9]
阅读全文 »

LeetCode513-找树左下角的值

发表于 2019-05-20 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/find-bottom-left-tree-value/

中文链接:https://leetcode-cn.com/problems/find-bottom-left-tree-value/

题目详述

给定一个二叉树,在树的最后一行找到最左边的值。

示例 1:

1
2
3
4
5
6
7
8
输入:

2
/ \
1 3

输出:
1

示例 2:

1
2
3
4
5
6
7
8
9
10
11
12
输入:

1
/ \
2 3
/ / \
4 5 6
/
7

输出:
7

注意: 您可以假设树(即给定的根节点)不为 NULL。

阅读全文 »

LeetCode129-求根到叶子节点数字之和

发表于 2019-05-19 | 分类于 LeetCode

题目链接

英文链接: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
2
3
4
5
6
7
8
9
输入: [1,2,3]
1
/ \
2 3
输出: 25
解释:
从根到叶子节点路径 1->2 代表数字 12.
从根到叶子节点路径 1->3 代表数字 13.
因此,数字总和 = 12 + 13 = 25.

示例 2:

1
2
3
4
5
6
7
8
9
10
11
12
输入: [4,9,0,5,1]
4
/ \
9 0
/ \
5 1
输出: 1026
解释:
从根到叶子节点路径 4->9->5 代表数字 495.
从根到叶子节点路径 4->9->1 代表数字 491.
从根到叶子节点路径 4->0 代表数字 40.
因此,数字总和 = 495 + 491 + 40 = 1026.
阅读全文 »

LeetCode59-螺旋矩阵II

发表于 2019-05-18 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/spiral-matrix-ii/

中文链接:https://leetcode-cn.com/problems/spiral-matrix-ii/

题目详述

给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。

示例:

1
2
3
4
5
6
7
输入: 3
输出:
[
[ 1, 2, 3 ],
[ 8, 9, 4 ],
[ 7, 6, 5 ]
]
阅读全文 »
1…232425…47
Jerring

Jerring

Talk is cheap, show me the code.

462 日志
4 分类
24 标签
© 2019 Jerring
由 Hexo 强力驱动
|
主题 — NexT.Muse v5.1.4