题目:给定一个整数 n,生成所有由 1 ... n 为节点所组成的二叉搜索树。示例: 输入: 3
输出:[
[1,null,3,2],
[3,2,null,1],
[3,1,null,null,2],
[2,1,3],
[1,null,2,null,3]
]
解释:
以上的输出对应以下 5 种不同结构的二叉搜索树:1 3 3
题目:给定两个数组,编写一个函数来计算它们的交集。示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2]
输出: [2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]
输出: [9,4] 说明:输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序。思路:定义两个set,一个存储数组1中的元素,第二个存储最后相同
题目:给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 给定 nums = [3
给你两个整数数组 startTime(开始时间)和 endTime(结束时间),并
给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node {
int val;
Node *left;
Node *right;
Node *next;
} 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。初始状态下,所有 nex
罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值
I 1
V 5
X 10
L 50
C 100
D 500
M 1000
给你一个数组 nums 。nums 的源数组中,所有元素与 nums 相同,但按非递
Given an array of integers A and let n to be its length.Assume Bk to be an array obtained by rotating the array A k positions clock-wise, we define a "rotation function" F on A as follow:F(k) = 0 * B
题目链接: https://leetcode.com/problems/sum-of-two-integers/not allowed to use the operator
+
and
-
.
Example:
Given a = 1 and b = 2, return 3. 思路: 这里用到了一个半加法的思想, 即两位单独的位相加其结果可以用异或得到, 进位可以用与得到. 然后
在一个 平衡字符串 中,‘L’ 和 ‘R’ 字符的数量是相同的。
解释:s 可以分割为 “R
给定两个整数 n 和 k,返回 1 … n 中所有可能的 k 个数的组合。示例 1:输入: n = 4, k = 2 输出: [
[2,4],
[3,4],
[2,3],
[1,2],
[1,3],
[1,4],
] 示例 2:输入: n = 1, k = 1 输出: [[1]]提示:1 <= n <= 20
1 <= k <= njav
给你一个整数数组 nums 和一个整数 k ,按以下方法修改该数组:选择某个下标 i 并将 nums[i] 替换为 -nums[i] 。 重复这个过程恰好 k 次。可以多次选择同一个下标 i 。以这种方式修改数组后,返回数组 可能的最大和 。示例 1:输入:nums = [4,2,3], k = 1 输出:5 解释:选择下标 1 ,nums 变为 [4,-2,3] 。 示例 2:输入:n
代表每个房屋存放金额的非负整数数组,计算你 在不触动警报装置的情况下 ,能够偷窃到的最高金额。示例 1:输入:nums = [2,3,2]输出:3解释:你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2),
题目18. 四数之和
给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 *a,*b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。注意答案中不可以包含重复的四元组。示例 1:**输入:**nums = [1,0,-1,0,-2,2], target = 0输出:[[-2,-1,1
数。思路1从1开始遍历所有整数,遇到丑数则count++, 直到第n个丑数。不过这种超时了。java代码1
你需要采用前序遍历的方式,将一个二叉树转换成一个由括号和整数组成的字符串。空节点则用一对空括号 “()” 表示。而且你需要省略所有不影响字符串与原始二叉树之间的一对一映射关系的空括号对。示例 1:输入: 二叉树: [1,2,3,4] 1
/
2 3
/
4输出: “1(2(4))(3)”解释: 原本将是“1(2(4)())(3())”, 在你省略所有不必要的空括号对之后, 它将是“1(2
给你 n 个任务和 m 个工人。每个任务需要一定的力量值才能完成,需要的力量值保存在下标从 0 开始的整数数组 tasks 中,第 i 个任务需要 tasks[i] 的力量才能完成。每个工人的力量值保存在下标从 0 开始的整数数组 workers 中,第 j&
给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nu
如果两个字符串 word1 和 word2 中从 ‘a’ 到 ‘z’ 每一个字母出现频率之差都 不超过 3 ,那么我们称这两个字符串 word1 和 word2 几乎相等 。给你两个长度都为 n 的字符串 word1 和 word2 ,如果 word
给你一个字符串 word ,返回 word 的所有子字符串中 元音的总数 ,元音是指 ‘a’、‘e’、‘i’、‘o’ 和 ‘u’ 。子字符串 是字符串中一个连续(非空)的字符序列。注意:由于对 word 长度的限制比较宽松,答案可能超过有符号 32 位整数的范围。计算时需当心。示例 1:输入:word = “aba” 输出:6 解释: 所有子字符串是:“a”、“ab”、“aba”、“b”、“ba”
给你], targetSum = 5输出:[]示例 3:输入:root = [1,2], target
「以扣会友」线下活动所在场地由若干主题空间与走廊组成,场地的地图记作由一维字符串型数组 grid,字符串中仅包含 “0"~"5” 这 6 个字符。地图上每一个字符代表面积为 1 的区域,其中 “0” 表示走廊,其他字符表示主题空间。相同且连续(连续指上、下、左、右四个方向连接)的字符组成同一个主题空间。假如整个 grid 区域的外侧均为走廊。请问,不与走廊直接相邻的主题空间的最大面积是多少?如果不
[0]提示:1 <= nums.length <= 50000 <= nums[i] <= 5000java代码:clas