自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode hot100 No.4 移动零(指针)

摘要:本文介绍如何原地将数组中的零元素移动到末尾,同时保持非零元素顺序。使用双指针法:快指针遍历数组寻找非零元素,慢指针标记放置位置。基础版通过两次遍历实现(覆盖非零元素+填充零),优化版通过交换元素实现一次遍历。两种方法时间复杂度均为O(n),空间复杂度O(1)。关键点包括原地修改、边界处理及双指针思想,是处理数组重排问题的经典解法。

2026-03-10 19:45:57 192

原创 LeetCode hot100 No.3 最长连续序列(哈希)

本文介绍了一种在O(n)时间复杂度内找出未排序整数数组中最长连续序列长度的算法。核心思路是利用哈希集合(Set)的O(1)查找特性,通过识别序列起点来避免重复计算。具体步骤包括:将数组转为Set去重;遍历Set时仅当num-1不存在时视为序列起点;从起点开始统计连续序列长度;更新最大值。该算法通过空间换时间,确保每个元素最多被访问两次,实现了线性时间复杂度。文章还详细解析了代码实现、算法分析及优化思路,并探讨了类似问题的扩展解法。

2026-03-10 18:06:49 479

原创 LeetCode hot100 No.2 字母异位词分组

摘要:本文介绍了一种将字母异位词分组的方法。通过将每个字符串排序后作为特征键,利用哈希表将相同字母组成的字符串归类。核心步骤包括:1)拆分排序字符串生成特征键;2)使用Map存储分组;3)将结果转换为二维数组。该方法时间复杂度为O(nklogk),空间复杂度为O(nk),其中n为字符串数量,k为字符串最大长度。这种"特征提取+哈希分组"的思路适用于各类分组问题。

2026-03-09 18:58:33 509

原创 LeetCode hot100 No.1 两数之和(哈希表最优解)

摘要:本文介绍了在整数数组中寻找两数之和等于目标值的两种解法。暴力枚举法通过双层循环检查所有组合,时间复杂度为O(n²)。优化解法利用哈希表存储已遍历元素,只需一次遍历即可找到匹配组合,时间复杂度降至O(n)。核心思路是计算当前元素的补数,若补数存在于哈希表中则返回结果。文章详细解析了哈希表实现的代码逻辑,包括初始化、遍历、差值计算和结果返回等步骤,并分析了算法的时间/空间复杂度。该方法通过空间换时间显著提升效率,是解决类似数组查找问题的经典方案。

2026-03-09 15:43:01 665

空空如也

空空如也

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

TA关注的人

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