![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leecode
文章平均质量分 79
刷题记录,主要是思维的解析过程
WishYouAFortune
骐骥一跃,不能十步;驽马十驾,功在不舍。
展开
-
【每日练题-leecode128. 最长连续序列】
128. 最长连续序列给定一个未排序的整数数组 ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为 的算法解决此问题。示例 1:输入:nums = [100,4,200,1,3,2]输出:4解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4。示例 2:输入:nums = [0,3,7,2,5,8,4,6,0,1]输出:9提示:这个问题可以通过使用哈希表来解决。我们可以利用哈希表来记录每个数字是否出现过,以及它之前和之后的数字是否原创 2024-07-10 15:51:40 · 965 阅读 · 0 评论 -
【每日练题-leecode76. 最小覆盖子串】
时间复杂度:O(m + n)空间复杂度:O(k + min(m, k)),其中 k 是t中不同字符的数量,且 k <= n。在最坏情况下,空间复杂度为 O(m)。请注意,这里的分析假设字符集的大小(k)相对于 m 和 n 是较小的,这在实际应用中通常是成立的,因为字符集的大小通常是一个常数。如果字符集非常大,那么空间复杂度可能会接近 O(m) 或 O(n)。原创 2024-07-10 16:43:45 · 1065 阅读 · 0 评论 -
最大子数组和(普通数组)
给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。是数组中的一个连续部分。6连续子数组 [4,-1,2,1] 的和最大,为 6。nums = [1]123如果你已经实现复杂度为O(n)的解法,尝试使用更为精妙的求解。原创 2024-06-13 16:59:23 · 274 阅读 · 0 评论 -
滑动窗口最大值(子串-hard)
这种方法通过巧妙地利用双端队列的特性,能够高效地实时维护窗口内的最大值信息,从而在一次遍历中就得到所有窗口的最大值,达到了较好的时间和空间复杂度。的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的。滑动窗口的位置 最大值。滑动窗口每次只向右移动一位。原创 2024-06-13 16:45:40 · 326 阅读 · 0 评论 -
560. 和为 K 的子数组
来存储前缀和以及其出现的次数,初始时前缀和为 0 的出现次数为 1。然后遍历数组中的每个元素。同时,将当前前缀和在哈希表中的出现次数加 1(如果已经存在就更新次数,否则添加新的项)。这样,通过一次遍历数组,利用哈希表快速查找和统计,就能高效地得到和为。是否在哈希表中,如果在,就说明存在一个子数组的和为。,那么将对应的出现次数累加到结果计数。我们使用前缀和的方法来解决这个问题。子数组是数组中元素的连续非空序列。对于当前元素,计算前缀和。首先,定义一个哈希表。原创 2024-06-13 15:05:00 · 240 阅读 · 0 评论 -
动态规划-不同路径
中等相关标签相关企业一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?283从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> 向下 -> 向下2. 向下 -> 向下 -> 向右3. 向下 -> 向右 -> 向下2862 * 109。原创 2024-06-06 21:33:34 · 708 阅读 · 0 评论 -
【单词拆分】
在代码中,使用了两层循环来遍历字符串`s`和单词字典`wordDict`。外层循环的次数为字符串`s`的长度,内层循环的次数为单词字典`wordDict`的大小。在空间方面,使用了一个布尔型数组`dp`来保存中间结果,其长度为字符串`s`的长度加1。返回 true 因为 "applepenapple" 可以由 "apple" "pen" "apple" 拼接成。动态规划的思想是通过保存已经计算过的子问题的结果,避免重复计算,从而提高算法的效率。其中,$n$为字符串`s`的长度。原创 2024-06-06 13:32:19 · 228 阅读 · 0 评论 -
最长递增子序列
这个过程中,实际上是在不断维护一个有序的尾部元素列表,每次新元素加入时,都通过二分查找找到合适的位置插入,以保证这个列表始终代表着最长递增子序列的尾部情况。是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。最长递增子序列是 [2,3,7,101],因此长度为 4。这种方法巧妙地利用了贪心策略和二分查找来高效地求解问题。,找到其中最长严格递增子序列的长度。然后遍历输入数组中的每个元素。就是最长递增子序列的长度。原创 2024-06-05 18:24:28 · 650 阅读 · 0 评论 -
计算给定字符串中最长的回文字符串
题目分析:要求计算给定字符串中最长的回文字符串。原创 2024-05-08 19:20:03 · 186 阅读 · 3 评论