力扣
文章平均质量分 68
Zero_979
计算机科学与技术硕士在读
展开
-
LeetCode 热题 C++ 647. 回文子串
给你一个字符串s,请你统计并返回这个字符串中的数目。是正着读和倒过来读一样的字符串。是字符串中的由连续字符组成的一个序列。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。s = "abc"3三个回文子串: "a", "b", "c"s = "aaa"66个回文子串: "a", "a", "a", "aa", "aa", "aaa"原创 2023-03-20 14:05:31 · 160 阅读 · 0 评论 -
LeetCode 热题 C++ 621. 任务调度器
给你一个用字符数组tasks表示的 CPU 需要执行的任务列表。其中每个字母表示一种不同种类的任务。任务可以以任意顺序执行,并且每个任务都可以在 1 个单位时间内执行完。在任何一个单位时间,CPU 可以完成一个任务,或者处于待命状态。然而,两个的任务之间必须有长度为整数n的冷却时间,因此至少有连续n个单位时间内 CPU 在执行不同的任务,或者在待命状态。你需要计算完成所有任务所需要的。8A -> B -> (待命) -> A -> B -> (待命) -> A -> B。原创 2023-03-12 18:35:52 · 336 阅读 · 0 评论 -
LeetCode 热题 C++ 581. 最短无序连续子数组 617. 合并二叉树
给你一个整数数组nums,你需要找出一个,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。请你找出符合题意的子数组,并输出它的长度。5你只需要对 [6, 4, 8, 10, 9] 进行升序排序,那么整个表都会变为升序排序。原创 2023-03-10 11:00:59 · 484 阅读 · 2 评论 -
LeetCode 热题 C++ 538. 把二叉搜索树转换为累加树 543. 二叉树的直径 560. 和为 K 的子数组
给出二叉树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点node的新值等于原树中大于或等于node.val的值之和。本题和 1038:相同[1,null,1][3,3,2][7,9,4,10]0104-104104。原创 2023-03-08 11:46:26 · 333 阅读 · 0 评论 -
LeetCode 热题 C++ 416. 分割等和子集 437. 路径总和 III 438. 找到字符串中所有字母异位词 448. 找到所有数组中消失的数字 461. 汉明距离 494. 目标和
给你一个的数组nums。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。true数组可以分割成 [1, 5, 5] 和 [11]。false数组不能分割成两个元素和相等的子集。原创 2023-03-07 11:04:22 · 172 阅读 · 0 评论 -
LeetCode 热题 C++ 399. 除法求值 406. 根据身高重建队列
给你一个变量对数组equations和一个实数值数组values作为已知条件,其中和values[i]共同表示等式。每个Ai或Bi是一个表示单个变量的字符串。另有一些以数组queries表示的问题,其中表示第j个问题,请你根据已知条件找出的结果作为答案。返回。如果存在某个无法确定的答案,则用-1.0替代这个答案。如果问题中出现了给定的已知条件中没有出现的字符串,也需要用-1.0替代这个答案。输入总是有效的。你可以假设除法运算中不会出现除数为 0 的情况,且不存在任何矛盾的结果。原创 2023-03-05 10:25:47 · 434 阅读 · 0 评论 -
LeetCode 热题 C++ 338. 比特位计数 347. 前 K 个高频元素 394. 字符串解码
给你一个整数n,对于中的每个i,计算其二进制表示中 1,返回一个长度为n + 1的数组ans作为答案。原创 2023-03-04 11:55:29 · 368 阅读 · 1 评论 -
LeetCode 热题 C++ 312. 戳气球 322. 零钱兑换
有n个气球,编号为0到n - 1,每个气球上都标有一个数字,这些数字存在数组nums中。现在要求你戳破所有的气球。戳破第i个气球,你可以获得枚硬币。这里的i - 1和i + 1代表和i相邻的两个气球的序号。如果i - 1或i + 1超出了数组的边界,那么就当它是一个数字为1的气球。求所能获得硬币的最大数量。16710。原创 2023-03-03 11:03:33 · 528 阅读 · 0 评论 -
LeetCode 热题 C++ 121. 买卖股票的最佳时机 309. 最佳买卖股票时机含冷冻期
在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回。设计一个算法来计算你所能获取的最大利润。在这种情况下, 没有交易完成, 所以最大利润为 0。简单题,循环一次,每次更新最大值和最小值和结果就行。买入这只股票,并选择在。原创 2023-03-02 10:33:42 · 325 阅读 · 0 评论 -
LeetCode 热题 C++ 301. 删除无效的括号
给你一个由若干括号和字母组成的字符串s,删除最小数量的无效括号,使得输入的字符串有效。返回所有可能的结果。答案可以按返回。原创 2023-03-02 11:52:58 · 322 阅读 · 0 评论 -
LeetCode 热题 C++ 287. 寻找重复数 297. 二叉树的序列化与反序列化 300. 最长递增子序列 739. 每日温度
给定一个包含n + 1个整数的数组nums,其数字都在[1, n]范围内(包括1和n),可知至少存在一个重复的整数。假设nums只有,返回。你设计的解决方案必须数组nums且只用常量级O(1)的额外空间。23numsO(n)原创 2023-03-02 10:18:56 · 222 阅读 · 0 评论 -
LeetCode 热题 C++ 238. 除自身以外数组的乘积 239. 滑动窗口最大值 240. 搜索二维矩阵 II 279. 完全平方数 283. 移动零
给你一个整数数组nums,返回数组answer,其中answer[i]等于nums中除nums[i]之外其余各元素的乘积。题目数据数组nums之中任意元素的全部前缀元素和后缀的乘积都在整数范围内。请且在O( n)时间复杂度内完成此题。原创 2023-03-02 10:31:45 · 361 阅读 · 0 评论 -
LeetCode 热题 C++ 215. 数组中的第K个最大元素 221. 最大正方形 226. 翻转二叉树 234. 回文链表 236. 二叉树的最近公共祖先
给定整数数组nums和整数k,请返回数组中第k个最大的元素。请注意,你需要找的是数组排序后的第k个最大的元素,而不是第k个不同的元素。你必须设计并实现时间复杂度为O(n)的算法解决此问题。原创 2023-02-28 13:12:44 · 145 阅读 · 0 评论 -
LeetCode 热题 C++ 200. 岛屿数量 206. 反转链表 207. 课程表 208. 实现 Trie (前缀树)
给你一个由'1'(陆地)和'0'(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。原创 2023-02-27 13:34:31 · 363 阅读 · 0 评论 -
LeetCode 热题 C++ 198. 打家劫舍 337. 打家劫舍 III
你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,。给定一个代表每个房屋存放金额的非负整数数组,计算你,一夜之内能够偷窃到的最高金额。[1,2,3,1]4偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3 号房屋 (金额 = 3)。偷窃到的最高金额 = 1 + 3 = 4。12偷窃 1 号房屋 (金额 = 2), 偷窃 3 号房屋 (金额 = 9),接着偷窃 5 号房屋 (金额 = 1)。原创 2023-02-26 13:46:50 · 394 阅读 · 0 评论 -
LeetCode 热题 C++ 169. 多数元素 10. 正则表达式匹配 155. 最小栈
给定一个大小为n的数组nums,返回其中的多数元素。多数元素是指在数组中出现次数⌊ n/2 ⌋的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。32尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。原创 2023-02-26 13:19:48 · 517 阅读 · 0 评论 -
LeetCode 热题 C++ 148. 排序链表 152. 乘积最大子数组 160. 相交链表
三道力扣题原创 2023-02-25 11:15:27 · 580 阅读 · 0 评论 -
LeetCode 热题 C++ 146. LRU 缓存
请你设计并实现一个满足约束的数据结构。实现LRUCachecapacitykey-1keyvaluekey-valuecapacity函数get和put必须以O(1)的平均时间复杂度运行。// 缓存是 {1=1}// 缓存是 {1=1, 2=2}// 返回 1// 该操作会使得关键字 2 作废,缓存是 {1=1, 3=3}// 返回 -1 (未找到)// 该操作会使得关键字 1 作废,缓存是 {4=4, 3=3}// 返回 -1 (未找到)// 返回 3// 返回 4。原创 2023-02-24 11:45:27 · 254 阅读 · 0 评论 -
LeetCode 热题 C++ 141. 环形链表 142. 环形链表 II(详解!)
给你一个链表的头节点head,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从 0 开始)。pos。仅仅是为了标识链表的实际情况。如果链表中存在环,则返回true。否则,返回false。true链表中有一个环,其尾部连接到第二个节点。true链表中有一个环,其尾部连接到第一个节点。false链表中没有环。-1。原创 2023-02-24 10:16:18 · 457 阅读 · 0 评论 -
LeetCode 热题 C++ 139. 单词拆分
给你一个字符串s和一个字符串列表wordDict作为字典。请你判断是否可以利用字典中出现的单词拼接出s。不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。true返回 true 因为 "leetcode" 可以由 "leet" 和 "code" 拼接成。true返回 true 因为可以由" 拼接成。注意,你可以重复使用字典中的单词。原创 2023-02-23 11:18:06 · 508 阅读 · 0 评论 -
LeetCode 热题 C++ 128. 最长连续序列 136. 只出现一次的数字
给定一个未排序的整数数组nums,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为O(n)的算法解决此问题。4最长数字连续序列是9。原创 2023-02-23 10:47:37 · 275 阅读 · 0 评论 -
LeetCode 热题 C++ 124. 二叉树中的最大路径和
被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。同一个节点在一条路径序列中。该路径节点,且不一定经过根节点。是路径中各节点值的总和。给你一个二叉树的根节点root,返回其。6最优路径是 2 -> 1 -> 3 ,路径和为 2 + 1 + 3 = 642最优路径是 15 -> 20 -> 7 ,路径和为 15 + 20 + 7 = 42。原创 2023-02-23 09:46:19 · 280 阅读 · 0 评论 -
LeetCode 热题 C++ 114. 二叉树展开为链表
给你二叉树的根结点rootTreeNoderightnullroot = [][]root = [0][0][0, 2000]你可以使用原地算法(O(1)额外空间)展开这棵树吗?原创 2023-02-12 14:27:18 · 518 阅读 · 2 评论 -
LeetCode 热题 C++ 105. 从前序与中序遍历序列构造二叉树
前序的组成为【根】【左子树】【右子树】中序的组成为【左子树】【根】【右子树】,请构造二叉树并返回其根节点。遇到构建树——>递归。原创 2023-02-09 21:21:47 · 135 阅读 · 0 评论 -
LeetCode 热题 C++ 102. 二叉树的层序遍历 104. 二叉树的最大深度
给你二叉树的根节点root,返回其节点值的。(即逐层地,从左到右访问所有节点)。原创 2022-12-18 23:59:02 · 146 阅读 · 0 评论 -
LeetCode 热题 C++ 98. 验证二叉搜索树 101. 对称二叉树
给你一个二叉树的根节点root,判断其是否是一个有效的二叉搜索树。truefalse根节点的值是 5 ,但是右子节点的值是 4。[1, 104]原创 2022-12-16 22:50:27 · 217 阅读 · 0 评论 -
LeetCode 热题 C++ 85. 最大矩形
给定一个仅包含0和1、大小为的二维二进制矩阵,找出只包含1的最大矩形,并返回其面积。6最大矩形如上图所示。0010。原创 2022-11-28 21:56:03 · 476 阅读 · 0 评论 -
LeetCode 热题 C++ 94. 二叉树的中序遍历
给定一个二叉树的根节点root,返回它的遍历。原创 2022-11-27 22:21:28 · 201 阅读 · 0 评论 -
LeetCode 热题 C++ 84. 柱状图中最大的矩形
给定n个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1。求在该柱状图中,能够勾勒出来的矩形的最大面积。10最大的矩形为图中红色区域,面积为 104。原创 2022-11-25 21:33:54 · 433 阅读 · 0 评论 -
LeetCode 热题 C++ 79. 单词搜索
给定一个m x n二维字符网格board和一个字符串单词word。如果word存在于网格中,返回true;否则,返回false。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。遇到的坑:一开始每次用的是减少字符串,用substr的,但是这样会超时。所以再增加一个变量k,每次要比较的就是word[k]和当前字母。原创 2022-11-22 19:57:01 · 344 阅读 · 0 评论 -
LeetCode 热题 C++ 78. 子集
给你一个整数数组nums,数组中的元素。返回该数组所有可能的子集(幂集)。解集包含重复的子集。你可以按返回解集。原创 2022-11-21 20:46:50 · 200 阅读 · 0 评论 -
LeetCode 热题 C++ 76. 最小覆盖子串
给你一个字符串s、一个字符串t。返回s中涵盖t所有字符的最小子串。如果s中不存在涵盖t所有字符的子串,则返回空字符串""。tts"BANC""a"""t 中两个字符 'a' 均应包含在 s 的子串中,因此没有符合条件的子字符串,返回空字符串。t。原创 2022-11-20 22:53:54 · 109 阅读 · 0 评论 -
LeetCode 热题 C++ 75. 颜色分类
给定一个包含红色、白色和蓝色、共n个元素的数组nums,对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。我们使用整数0、1和2分别表示红色、白色和蓝色。必须在不使用库的sort函数的情况下解决这个问题。[0,1,2]012。原创 2022-11-17 17:02:11 · 583 阅读 · 0 评论 -
LeetCode 热题 C++ 72. 编辑距离
给你两个单词word1和word2,请返回将word1转换成word2所使用的最少操作数。3horse -> rorse (将 'h' 替换为 'r')rorse -> rose (删除 'r')rose -> ros (删除 'e')5intention -> inention (删除 't')inention -> enention (将 'i' 替换为 'e')enention -> exention (将 'n' 替换为 'x')原创 2022-11-16 23:26:27 · 178 阅读 · 0 评论 -
LeetCode 热题 C++ 62. 不同路径
一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?283从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> 向下 -> 向下2. 向下 -> 向下 -> 向右3. 向下 -> 向右 -> 向下2862 * 109。原创 2022-11-09 16:27:27 · 179 阅读 · 1 评论 -
LeetCode 热题 C++ 56. 合并区间
以数组intervals表示若干个区间的集合,其中单个区间为。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].[[1,5]]区间 [1,4] 和 [4,5] 可被视为重叠区间。原创 2022-11-07 16:35:34 · 135 阅读 · 0 评论 -
LeetCode 热题 C++ 53. 最大子数组和 55. 跳跃游戏
给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。是数组中的一个连续部分。6连续子数组 [4,-1,2,1] 的和最大,为 6。nums = [1]123如果你已经实现复杂度为O(n)的解法,尝试使用更为精妙的求解。原创 2022-11-05 20:52:45 · 944 阅读 · 0 评论 -
LeetCode 热题 C++ 49. 字母异位词分组
给你一个字符串数组,请你将组合在一起。可以按任意顺序返回结果列表。是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次。原创 2022-11-05 19:34:32 · 224 阅读 · 0 评论 -
LeetCode 热题 C++ 46. 全排列 48. 旋转图像
给定一个不含重复数字的数组nums,返回其所有可能的全排列。你可以返回答案。原创 2022-11-05 16:48:26 · 143 阅读 · 0 评论 -
LeetCode 热题 C++ 42. 接雨水 (两种解法:栈&动态规划)
给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。6上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。9。原创 2022-11-04 22:38:23 · 313 阅读 · 0 评论