Leetcode-java
文章平均质量分 57
Leetcode-java
凉漠
摸爬滚打
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
739. 每日温度
天,下一个更高温度出现在几天后。如果气温在这之后都不会升高,请在该位置用。,表示每天的温度,返回一个数组。原创 2025-11-24 21:10:04 · 98 阅读 · 0 评论 -
394. 字符串解码
你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数。给定一个经过编码的字符串,返回它解码后的字符串。测试用例保证输出的长度不会超过。,表示其中方括号内部的。1、正则 + 循环替换。原创 2025-11-24 18:56:48 · 121 阅读 · 0 评论 -
155. 最小栈
-> 返回 -3.minStack.top();操作,并能在常数时间内检索到最小元素的栈。,用栈本身以外的数据结构实现。原创 2025-11-24 17:39:05 · 756 阅读 · 0 评论 -
5. 最长回文子串
"aba" 同样是符合题意的答案。中最长的 回文 子串。原创 2025-11-24 11:37:54 · 71 阅读 · 0 评论 -
64. 最小路径和
请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。因为路径 1→3→1→1→1 的总和最小。每次只能向下或者向右移动一步。给定一个包含非负整数的。原创 2025-11-24 10:46:39 · 53 阅读 · 0 评论 -
62. 不同路径
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。网格的左上角 (起始点在下图中标记为 “Start” )。从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> 向下 -> 向下。2. 向下 -> 向下 -> 向右。3. 向下 -> 向右 -> 向下。问总共有多少条不同的路径?原创 2025-11-24 10:33:44 · 104 阅读 · 0 评论 -
208. 实现 Trie (前缀树)
/ 返回 False。// 返回 True。// 返回 True。// 返回 True。children[26] —— 指向 26 个字母的下一个节点。isend —— 标记当前节点是否是某个单词的结尾。search —— 找到路径 + 必须是单词结尾。startsWith —— 找到路径即可。insert —— 逐字符建路径。原创 2025-11-24 00:35:44 · 471 阅读 · 0 评论 -
207. 课程表
总共有 2 门课程。学习课程 1 之前,你需要先完成课程 0;并且学习课程 0 之前,你还应先完成课程 1。总共有 2 门课程。学习课程 1 之前,你需要完成课程 0。在选修某些课程之前需要一些先修课程。请你判断是否可能完成所有课程的学习?为总数,只需要判断是否存在环。,表示如果要学习课程。你这个学期必须选修 n。原创 2025-11-23 23:40:01 · 211 阅读 · 0 评论 -
416. 分割等和子集
请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。数组可以分割成 [1, 5, 5] 和 [11]。数组不能分割成两个元素和相等的子集。原创 2025-11-23 13:02:39 · 104 阅读 · 0 评论 -
152. 乘积最大子数组
请你找出数组中乘积最大的非空连续 子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。结果不能为 2, 因为 [-2,-1] 不是子数组。,一个只包含一个元素的数组的乘积是这个元素的值。子数组 [2,3] 有最大乘积 6。测试用例的答案是一个。原创 2025-11-23 12:09:21 · 184 阅读 · 0 评论 -
300. 最长递增子序列
是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。最长递增子序列是 [2,3,7,101],因此长度为 4。,找到其中最长严格递增子序列的长度。原创 2025-11-23 01:28:57 · 169 阅读 · 0 评论 -
139. 单词拆分
返回 true 因为 "applepenapple" 可以由 "apple" "pen" "apple" 拼接成。返回 true 因为 "leetcode" 可以由 "leet" 和 "code" 拼接成。不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。如果可以利用字典中出现的一个或多个单词拼接出。注意,你可以重复使用字典中的单词。原创 2025-11-23 01:09:42 · 351 阅读 · 0 评论 -
322. 零钱兑换
如果没有任何一种硬币组合能组成总金额,返回。,表示不同面额的硬币;你可以认为每种硬币的数量是无限的。计算并返回可以凑成总金额所需的。原创 2025-11-21 19:21:38 · 149 阅读 · 0 评论 -
279. 完全平方数
是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。的完全平方数的最少数量。原创 2025-11-21 17:58:01 · 246 阅读 · 0 评论 -
198. 打家劫舍
你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,。给定一个代表每个房屋存放金额的非负整数数组,计算你,一夜之内能够偷窃到的最高金额。[1,2,3,1]4偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3 号房屋 (金额 = 3)。偷窃到的最高金额 = 1 + 3 = 4。12偷窃 1 号房屋 (金额 = 2), 偷窃 3 号房屋 (金额 = 9),接着偷窃 5 号房屋 (金额 = 1)。原创 2025-11-21 00:04:33 · 240 阅读 · 0 评论 -
763. 划分字母区间
像 "ababcbacadefegde", "hijhklij" 这样的划分是错误的,因为划分的片段数较少。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。划分结果为 "ababcbaca"、"defegde"、"hijhklij"。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是。返回一个表示每个字符串片段的长度的列表。每个字母最多出现在一个片段中。原创 2025-11-20 23:46:16 · 237 阅读 · 0 评论 -
45. 跳跃游戏 II
从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。向后跳转的最大长度。换句话说,如果你在索引。测试用例保证可以到达。跳到最后一个位置的最小跳跃数是 2。处,你可以跳转到任意。初始位置在下标 0。原创 2025-11-20 10:53:14 · 139 阅读 · 0 评论 -
55. 跳跃游戏
无论怎样,总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回。给你一个非负整数数组。原创 2025-11-20 10:36:51 · 447 阅读 · 0 评论 -
347. 前 K 个高频元素
请你返回其中出现频率前。原创 2025-11-19 18:47:22 · 164 阅读 · 0 评论 -
215. 数组中的第K个最大元素
请注意,你需要找的是数组排序后的第。你必须设计并实现时间复杂度为。个最大的元素,而不是第。原创 2025-11-19 17:56:54 · 203 阅读 · 0 评论 -
131. 分割回文串
分割成一些 子串,使每个子串都是。所有可能的分割方案。原创 2025-11-18 18:43:29 · 417 阅读 · 0 评论 -
994. 腐烂的橘子
左下角的橘子(第 2 行, 第 0 列)永远不会腐烂,因为腐烂只会发生在 4 个方向上。直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。因为 0 分钟时已经没有新鲜橘子了,所以答案就是 0。的新鲜橘子都会腐烂。原创 2025-11-19 13:58:10 · 353 阅读 · 0 评论 -
200. 岛屿数量
岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。(水)组成的的二维网格,请你计算网格中岛屿的数量。此外,你可以假设该网格的四条边均被水包围。原创 2025-11-19 00:25:05 · 236 阅读 · 0 评论 -
39. 组合总和--回溯
2 和 3 可以形成一组候选,2 + 2 + 3 = 7。注意 2 可以使用多次。如果至少一个数字的被选数量不同,则两种组合是不同的。7 也是一个候选, 7 = 7。,并以列表形式返回。中可以使数字和为目标数。对于给定的输入,保证和为。原创 2025-11-17 22:25:13 · 276 阅读 · 0 评论 -
17. 电话号码的字母组合
给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。的字符串,返回所有它能表示的字母组合。原创 2025-11-17 22:00:12 · 124 阅读 · 0 评论 -
78. 子集
返回该数组所有可能的子集(幂集)。原创 2025-11-17 19:10:02 · 203 阅读 · 0 评论 -
46. 全排列---回溯
假设我们有 [2,5,8,9,10] 这 5 个数要填入,已经填到第 3 个位置,已经填了 [8,9] 两个数,那么这个数组目前为 [8,9 ∣ 2,5,10] 这样的状态,分隔符区分了左右两个部分。假设这个位置我们要填 10 这个数,为了维护数组,我们将 2 和 10 交换,即能使得数组继续保持分隔符左边的数已经填过,右边的待填 [8,9,10 ∣ 2,5]。将题目给定的 n 个数的数组 nums 划分成左右两个部分,,我们在回溯的时候只要动态维护这个数组即可。给定一个不含重复数字的数组。原创 2025-11-17 14:58:45 · 396 阅读 · 0 评论 -
287. 寻找重复数
我们从下标为 0 出发,根据 f(n) 计算出一个值,以这个值为新的下标,再用这个函数计算,以此类推,直到下标超界。同样的,我们从下标为 0 出发,根据 f(n) 计算出一个值,以这个值为新的下标,再用这个函数计算,以此类推产生一个类似链表一样的序列。使用环形链表II的方法解题(142.环形链表II),使用 142 题的思想来解决此题的关键是要理解如何将输入的数组看作为链表。从理论上讲,数组中如果有重复的数,那么就会产生多对一的映射,这样,形成的链表就一定会有环路了,),可知至少存在一个重复的整数。原创 2025-11-17 11:41:23 · 332 阅读 · 0 评论 -
42. 接雨水
给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。6上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。9。原创 2025-11-17 10:36:47 · 557 阅读 · 0 评论 -
437. 路径总和 III
不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。1000000000 + 1000000000 = 2000000000 (正常)和等于 8 的路径有 3 条,如图所示。,求该二叉树里节点值之和等于。发生整数溢出,后续计算都不准确。给定一个二叉树的根节点。原创 2025-11-17 00:14:17 · 240 阅读 · 0 评论 -
leetcode100
注意特殊情况head为null。:注意要新建node的位置。原创 2025-11-13 01:03:04 · 300 阅读 · 0 评论 -
136. 只出现一次的数字
除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。方法一:位运算:数组中的全部元素的异或运算结果即为数组中只出现一次的数字。原创 2025-11-13 00:55:13 · 273 阅读 · 0 评论 -
70. 爬楼梯
你有多少种不同的方法可以爬到楼顶呢?3、不用递归,多用一个数组空间复杂度增加。原创 2025-11-13 00:31:19 · 353 阅读 · 0 评论 -
20有效的括号
栈是Vector的一个子类,它实现了一个标准的后进先出的栈。学习思路:利用hashmap 去对应。,判断字符串是否有效。注意==和.equals。原创 2025-11-12 23:43:53 · 389 阅读 · 0 评论 -
35搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组。中,返回它将会被按顺序插入的位置。原创 2025-11-12 22:41:20 · 218 阅读 · 0 评论 -
HJ16 购物单--01背包问题
在这个样例中,第三、四、五件物品为主件,第一、二件物品为第五件物品的附件。但是特别地,如果同时购买了第一件物品和第二件物品,则只需要购买一次第五件物品。为了先购买重要的物品,他给每件物品规定了一个重要度,用整数 1∼5 表示。我们可以证明,购买一、二、五件商品,获得的满意度最大,为 20×3+20×3+10×1=13020×3+20×3+10×1=130。∙ ∙若要购买某附件,必须先购买该附件所属的主件,且每件物品只能购买一次。王强决定把年终奖用于购物,他把想买的物品分为两类:主件与附件。原创 2025-11-11 17:50:00 · 984 阅读 · 0 评论 -
HJ17 坐标移动
" 是合法的,向下移动 2020 个单位,到达 (−10,−20)(−10,−20) 点;" 是合法的,向上移动 1010 个单位,到达 (−10,−10)(−10,−10) 点;" 是合法的,向右移动 3030 个单位,到达 (20,−10)(20,−10) 点;∙ ∙第九个指令 "A10;" 是合法的,向左移动 1010 个单位,到达 (10,−10)(10,−10) 点。∙ ∙第一个指令 "A10;" 是合法的,向左移动 1010 个单位,到达 (−10,0)(−10,0) 点;原创 2025-11-11 18:30:04 · 476 阅读 · 0 评论 -
Leetcode 评论区代码(java)
【代码】Leetcode 评论区代码(java)原创 2024-12-24 23:09:21 · 333 阅读 · 0 评论 -
105. 从前序与中序遍历序列构造二叉树(java)重点标记
给定两个整数数组preorder和inorder,其中preorder是二叉树的inorder是同一棵树的,请构造二叉树并返回其根节点。[-1]原创 2024-12-24 23:00:49 · 576 阅读 · 0 评论 -
114. 二叉树展开为链表(java)标记一下
给你二叉树的根结点rootTreeNoderightnullroot = [][]root = [0][0]原创 2024-12-19 22:02:56 · 258 阅读 · 0 评论
分享