自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 LeeCode热题100学习总结--189题轮转数组

该算法通过三次翻转实现数组右旋k位:1.对k取模避免重复轮转;2.整体翻转数组;3.翻转前k个元素恢复后半段顺序;4.翻转剩余元素恢复前半段顺序。例如[1,2,3,4,5,6,7]右旋3位:整体翻转得[7,6,5,4,3,2,1],翻转前3位得[5,6,7,4,3,2,1],再翻转后4位得最终结果[5,6,7,1,2,3,4]。时间复杂度O(n),空间复杂度O(1)。

2025-09-08 23:46:06 182

原创 LeeCode热题100学习总结--560题和为K的子数组

前缀和的思想是 在 [ i , j ](i<j)的区间和为sum[ j ] - sum[ i ],即 通过 sum[ j ] - sum[ i ] = k 的式子我们可以找到 [ i+1 , j ](i<j)的子数组的和即为k,那么转换一下 sum[ j ] - k = sum[ i ] (j>i),sum[ i ]即为之前的前缀和,把sum[ i ]存入map中,那么我们便可以在时间复杂程度为O(n)的枚举中找出所有符合题意的子数组个数了。/*因为第一次找到子数组和为k时,前缀和sum-k=0。

2025-08-24 17:37:26 482

原创 LeeCode热题100学习总结--438题找到字符串中所有字母异位词

本文提出了一种滑动窗口算法来查找字符串s中所有p的异位词子串。通过维护一个计数数组来记录p中字符出现次数,使用双指针遍历s:右指针遇到匹配字符时消耗计数并移动,当窗口长度等于p长度时记录起始索引;否则左指针移动并恢复计数。该方法在O(n)时间内解决问题,示例展示了从s="cbaebabacd"中找到p="abc"异位词的过程,最终返回有效起始索引列表。

2025-08-24 14:20:51 1483

原创 LeeCode热题100学习总结--3题无重复字符的最长子串

我的思路是要不含重复字符则需要用到HashSet用来存储字符串子串的字符,左指针保持指向子串首字符,右指针指向当前枚举字符,那么(右指针 - 左指针 + 1)即为子串长度,枚举一个字符就更新一次最长子串长度。如果当前字符在哈希表中存在则说明从左指针到右指针的子串中出现重复字符,那么就更新左指针,删除哈希表中左指针对应的字符,保证左指针指向的字符为新的子串的首字符,同时右指针继续往右移动直至遇到重复字符或者枚举完字符串所有字符。(两个指针的移动类似毛毛虫爬行),请你找出其中不含有重复字符的。

2025-08-24 03:17:10 374

原创 LeeCode热题100学习总结--15题三数之和

文章摘要:该算法通过排序数组后使用双指针法高效找出所有不重复的三元组,使其和为0。关键步骤包括:1)排序数组;2)固定最小数nums[i];3)用双指针在剩余区间寻找两数之和等于-nums[i];4)通过跳过重复值实现去重。时间复杂度为O(n²),空间复杂度为O(1)。算法巧妙利用排序和指针移动时的去重处理,避免了结果集的重复检查。

2025-08-22 03:41:55 822

原创 LeeCode热题100学习总结--128题最长连续序列

文章摘要: 本文探讨了寻找未排序数组中数字连续最长序列的问题,比较了两种解法。第一版解法通过排序数组并使用哈希表存储相邻关系,但时间复杂度不满足O(n)要求。第二版采用HashSet去重后,通过检查序列起点并向后扩展,确保只处理序列首元素,从而在O(n)时间内完成。关键点在于仅当元素前驱不存在时才作为序列起点进行计数,避免了重复计算,如示例数组{100,4,200,1,3,2}能正确识别最长序列{1,2,3,4}。第二版解法更高效地实现了题目要求。

2025-08-22 01:11:35 851

原创 LeeCode热题100学习总结--49题字母异位词分组

该代码实现了将字母异位词分组的功能。通过将每个字符串排序后作为哈希表的键,相同字母异位词会映射到同一个键。使用getOrDefault方法安全获取值,若键不存在则创建新列表。最终返回哈希表中所有值组成的列表。关键点:1)排序字符串作为统一标识;2)利用哈希表高效分组;3)getOrDefault方法简化空值处理。时间复杂度主要取决于排序操作,为O(nklogk),其中n是字符串数量,k是字符串最大长度。

2025-08-21 23:21:13 344

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除