![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
文章平均质量分 51
SundyGuo
这个作者很懒,什么都没留下…
展开
-
LeetCode 863. 二叉树中所有距离为 K 的结点
最近刷LeetCode题目的一些思路,题目信息给定一个二叉树(具有根结点 root), 一个目标结点 target ,和一个整数值 K 。返回到目标结点 target 距离为 K 的所有结点的值的列表。 答案可以以任何顺序返回。示例 1:输入:root = [3,5,1,6,2,0,8,null,null,7,4], target = 5, K = 2输出:[7,4,1]解释:所求结点为与目...原创 2018-07-02 12:28:23 · 2396 阅读 · 0 评论 -
LeetCode 871. 最低加油次数
最近刷LeetCode题目的一些思路,题目信息汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处。沿途有加油站,每个 station[i] 代表一个加油站,它位于出发位置东面 station[i][0] 英里处,并且有 station[i][1] 升汽油。假设汽车油箱的容量是无限的,其中最初有 startFuel 升燃料。它每行驶 1 英里就会用掉 1 升汽油。...原创 2018-07-18 16:27:27 · 2120 阅读 · 0 评论 -
LeetCode 561. 数组拆分 I
最近刷LeetCode题目的一些思路,题目信息给定长度为 2n 的数组, 你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得从1 到 n 的 min(ai, bi) 总和最大。示例 1:输入: [1,4,3,2]输出: 4解释: n 等于 2, 最大总和为 4 = min(1, 2) + min(3, 4)....原创 2018-07-18 16:40:33 · 285 阅读 · 0 评论 -
LeetCode 873. 最长的斐波那契子序列的长度
最近刷LeetCode题目的一些思路,题目信息如果序列 X_1, X_2, ..., X_n 满足下列条件,就说它是 斐波那契式 的:n >= 3 对于所有 i + 2 <= n,都有 X_i + X_{i+1} = X_{i+2}给定一个严格递增的正整数数组形成序列,找到 A 中最长的斐波那契式的子序列的长度。如果一个不存在,返回 0 。(回想一下,子序列是从原序列...原创 2018-07-24 10:53:35 · 2067 阅读 · 0 评论 -
LeetCode 565. 数组嵌套
最近刷LeetCode题目的一些思路,题目信息索引从0开始长度为N的数组A,包含0到N - 1的所有整数。找到并返回最大的集合S,S[i] = {A[i], A[A[i]], A[A[A[i]]], ... }且遵守以下的规则。假设选择索引为i的元素A[i]为S的第一个元素,S的下一个元素应该是A[A[i]],之后是A[A[A[i]]]... 以此类推,不断添加直到S出现重复的元素。示...原创 2018-07-19 14:27:50 · 806 阅读 · 1 评论 -
LeetCode 693. 交替位二进制数
最近刷LeetCode题目的一些思路,题目信息给定一个正整数,检查他是否为交替位二进制数:换句话说,就是他的二进制数相邻的两个位数永不相等。示例 1:输入: 5输出: True解释:5的二进制数是: 101示例 2:输入: 7输出: False解释:7的二进制数是: 111示例 3:输入: 11输出: False解释:11的二进制数是: 10...原创 2018-07-25 16:48:09 · 394 阅读 · 0 评论 -
LeetCode 762. 二进制表示中质数个计算置位
最近刷LeetCode题目的一些思路,题目信息给定两个整数 L 和 R ,找到闭区间 [L, R] 范围内,计算置位位数为质数的整数个数。(注意,计算置位代表二进制表示中1的个数。例如 21 的二进制表示 10101 有 3 个计算置位。还有,1 不是质数。)示例 1:输入: L = 6, R = 10输出: 4解释:6 -> 110 (2 个计算置位,2 是质数)...原创 2018-07-25 17:09:43 · 274 阅读 · 0 评论 -
LeetCode 121. 买卖股票的最佳时机
最近刷LeetCode题目的一些思路,题目信息竟然随机了一道炒股相关的题目,一起看看给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的...原创 2018-07-25 17:42:35 · 287 阅读 · 0 评论 -
LeetCode 122. 买卖股票的最佳时机 II
最近刷LeetCode题目的一些思路,题目信息还是股票买卖的题目给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格...原创 2018-07-25 18:08:56 · 224 阅读 · 0 评论 -
LeetCode 123. 买卖股票的最佳时机 III
最近刷LeetCode题目的一些思路,题目信息再来一题股票买卖给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [3,3,5,0,0,3,1,4]输出: 6解释: 在第 4 天(股票价格 = 0)...原创 2018-07-25 18:27:36 · 658 阅读 · 0 评论 -
LeetCode 872. 叶子相似的树
最近刷LeetCode题目的一些思路,题目信息考虑一个二叉树的所有叶子。这些叶子的值按从左到右的顺序排列形成一个 叶值序列 。举个例子,给定一个如上图所示的树,其叶值序列为 (6, 7, 4, 9, 8) 。如果两个二叉树的叶值序列相同,我们就认为它们是 叶相似的。如果给定的两个头结点分别为 root1 和 root2 的树是叶相似的,返回 true;否则返回 false 。...原创 2018-07-22 15:04:15 · 881 阅读 · 2 评论 -
LeetCode 874. 行走机器人模拟
最近刷LeetCode题目的一些思路,题目信息无限网格上的机器人从点 (0, 0) 处开始出发,面向北方。该机器人可以接收以下三种类型的命令:-2:向左转 90 度 -1:向右转 90 度 1 <= x <= 9:向前移动 x 个单位长度有一些网格方块被视作障碍物。 第 i 个障碍物位于网格点 (obstacles[i][0], obstacles[i][1])...原创 2018-07-22 15:08:18 · 1843 阅读 · 0 评论 -
LeetCode 870. 优势洗牌
最近刷LeetCode题目的一些思路,题目信息给定两个大小相等的数组 A 和 B,A 相对于 B 的优势可以用满足 A[i] > B[i] 的索引 i 的数目来描述。返回 A 的任意排列,使其相对于 B 的优势最大化。 示例 1:输入:A = [2,7,11,15], B = [1,10,4,11]输出:[2,11,7,15]示例 2:输入:A = [12...原创 2018-07-18 16:13:12 · 991 阅读 · 2 评论 -
LeetCode 869. 重新排序得到 2 的幂
最近刷LeetCode题目的一些思路,题目信息从正整数 N 开始,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。如果我们可以通过上述方式得到 2 的幂,返回 true;否则,返回 false。 示例 1:输入:1输出:true示例 2:输入:10输出:false示例 3:输入:16输出:true示例 4:输入:...原创 2018-07-18 16:02:31 · 459 阅读 · 0 评论 -
LeetCode 481. 神奇字符串
最近刷LeetCode题目的一些思路,题目信息神奇的字符串 S 只包含 '1' 和 '2',并遵守以下规则:字符串 S 是神奇的,因为串联字符 '1' 和 '2' 的连续出现次数会生成字符串 S 本身。字符串 S 的前几个元素如下:S = “1221121221221121122 ......”如果我们将 S 中连续的 1 和 2 进行分组,它将变成:1 22 11 2 1 2...原创 2018-07-18 15:55:20 · 878 阅读 · 0 评论 -
LeetCode 860. 柠檬水找零
最近刷LeetCode题目的一些思路,题目信息在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5美元。注意,一开始你手头没有任何零钱。如果你能给每位顾客正确找零,返回 true ,否则返回 false...原创 2018-07-02 12:33:41 · 298 阅读 · 0 评论 -
LeetCode 861. 翻转矩阵后的得分
最近刷LeetCode题目的一些思路,题目信息有一个二维矩阵 A 其中每个元素的值为 0 或 1 。移动是指选择任一行或列,并转换该行或列中的每一个值:将所有 0 都更改为 1,将所有 1 都更改为 0。在做出任意次数的移动后,将该矩阵的每一行都按照二进制数来解释,矩阵的得分就是这些数字的总和。返回尽可能高的分数。 示例:输入:[[0,0,1,1],[1,0,1,0],[1,1,0,0]]输出:...原创 2018-07-02 15:58:52 · 979 阅读 · 0 评论 -
LeetCode 862. 和至少为 K 的最短子数组
最近刷LeetCode题目的一些思路,题目信息返回 A 的最短的非空连续子数组的长度,该子数组的和至少为 K 。如果没有和至少为 K 的非空子数组,返回 -1 。 示例 1:输入:A = [1], K = 1输出:1示例 2:输入:A = [1,2], K = 4输出:-1示例 3:输入:A = [2,-1,2], K = 3输出:3 提示:1 <= A.length <=...原创 2018-07-03 10:40:17 · 2799 阅读 · 0 评论 -
LeetCode 623. 在二叉树中增加一行
最近刷LeetCode题目的一些思路,题目信息给定一个二叉树,根节点为第1层,深度为 1。在其第 d 层追加一行值为 v 的节点。添加规则:给定一个深度值 d (正整数),针对深度为 d-1 层的每一非空节点 N,为 N 创建两个值为 v 的左子树和右子树。将 N 原先的左子树,连接为新节点 v 的左子树;将 N 原先的右子树,连接为新节点 v 的右子树。如果 d 的值为 1,深度 d - 1 不...原创 2018-07-03 13:53:31 · 481 阅读 · 0 评论 -
LeetCode 853. 车队
最近刷LeetCode题目的一些思路,题目信息N 辆车沿着一条车道驶向位于 target 英里之外的共同目的地。每辆车 i 以恒定的速度 speed[i] (英里/小时),从初始位置 position[i] (英里) 沿车道驶向目的地。一辆车永远不会超过前面的另一辆车,但它可以追上去,并与前车以相同的速度紧接着行驶。此时,我们会忽略这两辆车之间的距离,也就是说,它们被假定处于相同的位置。车队 是...原创 2018-07-03 14:58:45 · 445 阅读 · 0 评论 -
LeetCode 868. 转置矩阵
最近刷LeetCode题目的一些思路,题目信息给定一个矩阵 A, 返回 A 的转置矩阵。矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。 示例 1:输入:[[1,2,3],[4,5,6],[7,8,9]]输出:[[1,4,7],[2,5,8],[3,6,9]]示例 2:输入:[[1,2,3],[4,5,6]]输出:[[1,4],[2,5],[3,6]] 提示:1 <= ...原创 2018-07-10 15:06:13 · 326 阅读 · 0 评论 -
LeetCode 866. 具有所有最深结点的最小子树
最近刷LeetCode题目的一些思路,题目信息给定一个根为 root 的二叉树,每个结点的深度是它到根的最短距离。如果一个结点在整个树的任意结点之间具有最大的深度,则该结点是最深的。一个结点的子树是该结点加上它的所有后代的集合。返回能满足“以该结点为根的子树中包含所有最深的结点”这一条件的具有最大深度的结点。 示例:输入:[3,5,1,6,2,0,8,null,null,7,4]输出:[2,7,...原创 2018-07-10 15:12:49 · 842 阅读 · 0 评论 -
LeetCode 721. 账户合并
最近刷LeetCode题目的一些思路,题目信息给定一个列表 accounts,每个元素 accounts[i] 是一个字符串列表,其中第一个元素 accounts[i][0] 是 名称 (name),其余元素是 emails 表示该帐户的邮箱地址。现在,我们想合并这些帐户。如果两个帐户都有一些共同的邮件地址,则两个帐户必定属于同一个人。请注意,即使两个帐户具有相同的名称,它们也可能属于不同的人,因...原创 2018-07-04 11:44:55 · 1523 阅读 · 0 评论 -
LeetCode 868. 二进制间距
最近刷LeetCode题目的一些思路,题目信息给定一个正整数 N,找到并返回 N 的二进制表示中两个连续的 1 之间的最长距离。 如果没有两个连续的 1,返回 0 。 示例 1:输入:22输出:2解释:22 的二进制是 0b10110 。在 22 的二进制表示中,有三个 1,组成两对连续的 1 。第一对连续的 1 中,两个 1 之间的距离为 2 。第二对连续的 1...原创 2018-07-17 12:37:01 · 812 阅读 · 0 评论 -
LeetCode 457. 环形数组循环
最近刷LeetCode题目的一些思路,题目信息给定一组含有正整数和负整数的数组。如果某个索引中的 n 是正数的,则向前移动 n 个索引。相反,如果是负数(-n),则向后移动 n 个索引。假设数组首尾相接。判断数组中是否有环。环中至少包含 2 个元素。环中的元素一律“向前”或者一律“向后”。示例 1:给定数组 [2, -1, 1, 2, 2], 有一个循环,从索引 0 -> 2 -> 3...原创 2018-07-04 17:20:15 · 1475 阅读 · 0 评论 -
LeetCode 213. 打家劫舍 II
最近刷LeetCode题目的一些思路,题目信息你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都围成一圈,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [...原创 2018-07-04 18:25:32 · 430 阅读 · 0 评论 -
LeetCode 875. 爱吃香蕉的珂珂
最近刷LeetCode题目的一些思路,题目信息珂珂喜欢吃香蕉。这里有 N 堆香蕉,第 i 堆中有 piles[i] 根香蕉。警卫已经离开了,将在 H 小时后回来。珂珂可以决定她吃香蕉的速度 K (单位:根/小时)。每个小时,她将会选择一堆香蕉,从中吃掉 K 根。如果这堆香蕉少于 K 根,她将吃掉这堆的所有香蕉,然后这一小时内不会再吃更多的香蕉。 珂珂喜欢慢慢吃,但仍然想在警卫回来前吃...原创 2018-07-22 15:16:58 · 4212 阅读 · 0 评论