数组双指针总结

数组双指针分为三类:

【对撞指针】两个指针分别从序列两端向中间移动,常用于查找有序数组中满足特定条件的元素对、字符串反转等场景。

【快慢指针】两个指针从同一端出发,步长不同,常用于数组元素的移动、删除,或链表中的环检测、长度统计等问题。

【分离指针】两个指针分别遍历不同的数组或链表,适合处理有序数组的合并、交集、并集等问题。

对撞指针题目:

标题 题解 标签 难度
0167. 两数之和 II - 输入有序数组 数组、双指针、二分查找 中等
0344. 反转字符串 双指针、字符串 简单
0345. 反转字符串中的元音字母 双指针、字符串 简单
0125. 验证回文串 双指针、字符串 简单
0011. 盛最多水的容器 贪心、数组、双指针 中等
0611. 有效三角形的个数 贪心、数组、双指针、二分查找、排序 中等
0015. 三数之和 数组、双指针、排序 中等
0016. 最接近的三数之和 数组、双指针、排序 中等
0018. 四数之和 数组、双指针、排序 中等
0259. 较小的三数之和 数组、双指针、二分查找、排序 中等
0658. 找到 K 个最接近的元素 数组、双指针、二分查找、排序、滑动窗口、堆(优先队列) 中等
1099. 小于 K 的两数之和 数组、双指针、二分查找、排序 简单
0075. 颜色分类 数组、双指针、排序 中等
0360. 有序转化数组 数组、数学、双指针、排序 中等
0977. 有序数组的平方 数组、双指针、排序 简单
0881. 救生艇 贪心、数组、双指针、排序 中等
0042. 接雨水 栈、数组、双指针、动态规划、单调栈 困难
0443. 压缩字符串 双指针、字符串 中等

快慢指针练习题目:

标题 题解 标签 难度
0026. 删除有序数组中的重复项 数组、双指针 简单
0080. 删除有序数组中的重复项 II 数组、双指针 中等
0027. 移除元素 数组、双指针 简单
0283. 移动零 数组、双指针 简单
0845. 数组中的最长山脉 数组、双指针、动态规划、枚举 中等
0088. 合并两个有序数组 数组、双指针、排序 简单
0719. 找出第 K 小的数对距离 数组、双指针、二分查找、排序 困难
0334. 递增的三元子序列 贪心、数组 中等
0978. 最长湍流子数组 数组、动态规划、滑动窗口 中等
LCR 139. 训练计划 I 数组、双指针、排序 简单

分离指针练习题目:

标题 题解 标签 难度
0350. 两个数组的交集 II 数组、哈希表、双指针、二分查找、排序 简单
0925. 长按键入 双指针、字符串 简单
0844. 比较含退格的字符串 栈、双指针、字符串、模拟 简单
1229. 安排会议日程 数组、双指针、排序 中等
0415. 字符串相加 数学、字符串、模拟 简单
0392. 判断子序列 双指针、字符串、动态规划 简单
相关推荐
Skrrapper3 小时前
【C++】C++11都有什么新特性?
数据结构·c++
.小小陈.3 小时前
链表算法题
数据结构·算法·链表
大飞pkz3 小时前
【算法】排序算法汇总1
开发语言·数据结构·算法·c#·排序算法
前端小L3 小时前
单调栈的“降维打击”:从直方图到矩阵——再探「最大矩形」
数据结构·算法
逐步前行3 小时前
C数据结构--数组|矩阵|广义表
c语言·数据结构·矩阵
小丁努力不焦虑4 小时前
c++基本语法
java·c++·算法
迷途之人不知返4 小时前
数据结构初识,与算法复杂度
数据结构
货拉拉技术4 小时前
大模型音频水印技术:用AI守护音频数据的“身份指纹”
人工智能·算法·安全
ysa0510304 小时前
利用数的变形简化大规模问题#数论
c++·笔记·算法