秋季每日一题2024
文章平均质量分 84
秋季每日一题2024
sweetheart7-7
技术源于热爱 ---------------------- 学习改变命运,知识改变未来 ---------------------- Architect-Road
展开
-
LeetCode142. 环形链表 II(2024秋季每日一题 28)
给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。给定一个链表的头节点 head ,返回链表开始入环的第一个节点。原创 2024-09-26 21:12:03 · 385 阅读 · 0 评论 -
LeetCode141. 环形链表(2024秋季每日一题 27)
给你一个链表的头节点 head ,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果链表中存在环 ,则返回 true。输入:head = [3,2,0,-4], pos = 1。给你一个链表的头节点 head ,判断链表中是否有环。输入:head = [1,2], pos = 0。解释:链表中有一个环,其尾部连接到原创 2024-09-25 21:38:47 · 378 阅读 · 0 评论 -
LeetCode234. 回文链表(2024秋季每日一题 26)
给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true;否则,返回 false。你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?解法一:通过数组记录,然后遍历判断是否回文。链表中节点数目在范围[1, 105] 内。输入:head = [1,2,2,1]输入:head = [1,2]原创 2024-09-24 23:15:22 · 345 阅读 · 0 评论 -
LeetCode206. 反转链表(2024秋季每日一题 25)
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。进阶:链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。输入:head = [1,2,3,4,5]输入:head = [1,2]输出:[5,4,3,2,1]输入:head = []链表中节点的数目范围是。原创 2024-09-23 21:17:50 · 277 阅读 · 0 评论 -
LeetCode160. 相交链表(2024秋季每日一题 24)
给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 `c1` 开始相交:原创 2024-09-22 16:35:43 · 933 阅读 · 0 评论 -
LeetCode240. 搜索二维矩阵 II(2024秋季每日一题 23)
编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。原创 2024-09-21 11:49:03 · 1123 阅读 · 0 评论 -
LeetCode48. 旋转图像(2024秋季每日一题 22)
给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。输入:matrix = [[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,16]]输出:[[15,13,2,5],[14,3,4,1],[12,6,8,9],[16,7,10,11]]原创 2024-09-20 23:35:55 · 604 阅读 · 0 评论 -
LeetCode54. 螺旋矩阵(2024秋季每日一题 21)
给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]输出:[1,2,3,6,9,8,7,4,5]原创 2024-09-19 21:52:53 · 1006 阅读 · 0 评论 -
LeetCode41. 缺失的第一个正数(2024秋季每日一题 20)
给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。输入:nums = [7,8,9,11,12]解释:范围 [1,2] 中的数字都在数组中。输入:nums = [3,4,-1,1]输入:nums = [1,2,0]解释:1 在数组中,但 2 没有。解释:最小的正数 1 没有出现。原创 2024-09-18 21:33:45 · 304 阅读 · 0 评论 -
LeetCode73. 矩阵置零(2024秋季每日一题 19)
给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。请使用 原地 算法。输入:matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]]一个简单的改进方案是使用 O(m + n) 的额外空间,但这仍然不是最好的解决方案。一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案原创 2024-09-18 21:22:34 · 731 阅读 · 0 评论 -
LeetCode238. 除自身以外数组的乘积(2024秋季每日一题 18)
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。输入: nums = [-1,1,0,-3,3]输入: nums = [1,2,3,4]输出: [24,12,8,6]输出: [0,0,9,0,0]思路:前缀乘积、后缀乘积。原创 2024-09-13 22:17:51 · 292 阅读 · 0 评论 -
LeetCode189. 轮转数组(2024秋季每日一题 17)
给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。输入: nums = [1,2,3,4,5,6,7], k = 3。输入:nums = [-1,-100,3,99], k = 2。向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]向右轮转 3 步: [5,6,7,1,2,3,4]向右轮转 1 步: [99,-1,-100,3]向右轮转 2 步: [3,99,-1,-100]输出: [5原创 2024-09-12 22:00:43 · 166 阅读 · 0 评论 -
LeetCode56. 合并区间(2024秋季每日一题 16)
以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi]。输入:intervals = [[1,3],[2,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].解释:区间 [1,4] 和 [4,5] 可被视为重叠区间。输入:intervals = [[1,4],[4,5]]输出:[[1,6],[8,10],[15,18]]输出:[[1,5]]原创 2024-09-11 22:06:20 · 902 阅读 · 0 评论 -
LeetCode53. 最大子数组和(2024秋季每日一题 15)
给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组:是数组中的一个连续部分。原创 2024-09-10 21:12:29 · 331 阅读 · 0 评论 -
LeetCode76. 最小覆盖子串(2024秋季每日一题 14)
给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" 。 注意: 对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量。 如果 s 中存在这样的子串,我们保证它是唯一的答案。原创 2024-09-09 14:35:49 · 1146 阅读 · 0 评论 -
LeetCode239. 滑动窗口最大值(2024秋季每日一题 13)
给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。输入:nums = [1,3,-1,-3,5,3,6,7], k = 3。输入:nums = [1], k = 1。输出:[3,3,5,5,6,7]返回 滑动窗口中的最大值。原创 2024-09-07 15:19:38 · 868 阅读 · 0 评论 -
LeetCode560. 和为 K 的子数组(2024秋季每日一题 12)
给你一个整数数组 nums 和一个整数 k,请你统计并返回 该数组中和为 k 的子数组的个数 。输入:nums = [1,1,1], k = 2。输入:nums = [1,2,3], k = 3。,请你统计并返回 该数组中和为。子数组是数组中元素的连续非空序列。思路:前缀和 + 哈希表。原创 2024-09-06 21:16:34 · 258 阅读 · 0 评论 -
LeetCode438. 找到字符串中所有字母异位词(2024秋季每日一题 11)
给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。起始索引等于 0 的子串是 “cba”, 它是 “abc” 的异位词。起始索引等于 6 的子串是 “bac”, 它是 “abc” 的异位词。起始索引等于 0 的子串是 “ab”, 它是 “ab” 的异位词。起始索引等于 1 的子串是 “ba”, 它是 “ab” 的异位词。起始索引等于 2 的子串是 “ab”, 它是 “ab” 的异位词。输入: s = “abab”, p = “ab”输出: [0,1,2]原创 2024-09-05 21:32:51 · 825 阅读 · 0 评论 -
LeetCode3. 无重复字符的最长子串(2024秋季每日一题 10)
给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度,请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。给定一原创 2024-09-04 21:21:41 · 189 阅读 · 0 评论 -
LeetCode42. 接雨水(2024秋季每日一题 9)
给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]输入:height = [4,2,0,3,2,5]只需要通过循环求出当前列左边最大柱子和右边最大柱子。然后对每一列按照上面的思路求和即可。原创 2024-09-03 22:29:36 · 1055 阅读 · 0 评论 -
LeetCode15. 三数之和(2024秋季每日一题 8)
给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i!= k ,同时还满足 nums[i] + nums[j] + nums[k] == 0。不同的三元组是 [-1,0,1] 和 [-1,-1,2]。输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]输入:nums = [0,1,1]输入:nums = [0,0,0]解释:唯一可能的三元组和为 0。输出:[[0,0,0]]原创 2024-09-01 16:11:57 · 921 阅读 · 0 评论 -
LeetCode11. 盛最多水的容器(2024秋季每日一题 7)
给定一个长度为 n 的整数数组 height。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i])。解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。输入:[1,8,6,2,5,4,8,3,7]输入:height = [1,1]返回容器可以储存的最大水量。说明:你不能倾斜容器。原创 2024-08-31 11:12:13 · 1010 阅读 · 1 评论 -
LeetCode283. 移动零(2024秋季每日一题 6)
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。你能尽量减少完成的操作次数吗?原创 2024-08-29 22:25:44 · 467 阅读 · 0 评论 -
LeetCode128. 最长连续序列(2024秋季每日一题 5)
给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。思路:先对数组中的元素去重(set集合)、然后遍历每个不连续区间的头元素,计算当前区间的长度。请你设计并实现时间复杂度为。原创 2024-08-28 21:51:03 · 897 阅读 · 0 评论 -
LeetCode49. 字母异位词分组(2024秋季每日一题 4)
给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。字母异位词 是由重新排列源单词的所有字母得到的一个新单词。原创 2024-08-27 21:07:25 · 784 阅读 · 0 评论 -
LeetCode1. 两数之和(2024秋季每日一题 3)
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。输入:nums = [2,7,11,15], target = 9。输入:nums = [3,2,4], target = 6。输入:nums = [3,3], target = 6。你可以按任意顺序返回答案。原创 2024-08-26 15:08:42 · 749 阅读 · 0 评论 -
LeetCode152. 乘积最大子数组(2024秋季每日一题 2)
给你一个整数数组 $nums$,请你找出数组中乘积最大的非空连续 子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。测试用例的答案是一个 $32$-位 整数。原创 2024-08-24 13:53:46 · 668 阅读 · 0 评论 -
LeetCode172. 阶乘后的零(2024秋季每日一题 1)
给定一个整数 n ,返回 n! 结果中尾随零的数量。提示 n! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1原创 2024-08-22 16:14:01 · 659 阅读 · 0 评论