数据结构及技巧-总集


能帮到你的话,就给个赞吧 😘


文章目录

  • 双指针
  • 链表
    • 双指针七道链表
      • [01 21. 合并两个有序链表](#01 21. 合并两个有序链表)
      • [02. 86. 分隔链表*](#02. 86. 分隔链表*)
      • [03. 23. 合并 K 个升序链表](#03. 23. 合并 K 个升序链表)
      • [04. 19. 删除链表的倒数第 N 个结点*](#04. 19. 删除链表的倒数第 N 个结点*)
      • [05. 876. 链表的中间结点*](#05. 876. 链表的中间结点*)
      • [06. 141. 环形链表*](#06. 141. 环形链表*)
      • [07. 142. 环形链表 II*](#07. 142. 环形链表 II*)
      • [08. 160. 相交链表*](#08. 160. 相交链表*)
    • 强化练习双指针链表
      • [01 83. 删除排序链表中的重复元素](#01 83. 删除排序链表中的重复元素)
      • [02. 264. 丑数 II*](#02. 264. 丑数 II*)
      • [03. 378. 有序矩阵中第 K 小的元素*](#03. 378. 有序矩阵中第 K 小的元素*)
      • [04. 373. 查找和最小的 K 对数字*](#04. 373. 查找和最小的 K 对数字*)
    • 反转单链表-递归
      • [01 206. 反转链表*](#01 206. 反转链表*)
      • [02. 92. 反转链表 II*](#02. 92. 反转链表 II*)
    • [K 个一组反转链表](#K 个一组反转链表)
      • [01 25. K 个一组翻转链表*](#01 25. K 个一组翻转链表*)
    • 判断回文链表
      • [01 234. 回文链表*](#01 234. 回文链表*)
  • 数组
    • 双指针七道
      • [01 27. 移除元素](#01 27. 移除元素)
      • [02. 26. 删除有序数组中的重复项](#02. 26. 删除有序数组中的重复项)
      • [03. 283. 移动零](#03. 283. 移动零)
      • [04. 167. 两数之和 II](#04. 167. 两数之和 II)
      • [05. 344. 反转字符串](#05. 344. 反转字符串)
      • [06. 5. 最长回文子串*](#06. 5. 最长回文子串*)
    • 双指针强化练习
      • [01 88. 合并两个有序数组*](#01 88. 合并两个有序数组*)
      • [02. 977. 有序数组的平方*](#02. 977. 有序数组的平方*)
      • [03. 360. 有序转化数组🔒](#03. 360. 有序转化数组🔒)
      • [04. 151. 反转字符串中的单词*](#04. 151. 反转字符串中的单词*)
    • nSum
      • [01 1. 两数之和](#01 1. 两数之和)
      • [02. 167. 两数之和 II](#02. 167. 两数之和 II)
      • [03. 15. 三数之和*](#03. 15. 三数之和*)
      • [04. 18. 四数之和*](#04. 18. 四数之和*)
    • 区域和/前缀和
      • 使用场景
      • [01 303. 区域和检索 - 数组不可变*](#01 303. 区域和检索 - 数组不可变*)
      • [02. 304. 二维区域和检索 - 矩阵不可变*](#02. 304. 二维区域和检索 - 矩阵不可变*)
    • 差分
      • 使用场景
      • [01 370. 区间加法🔒*](#01 370. 区间加法🔒*)
      • [02. 1109. 航班预订统计](#02. 1109. 航班预订统计)
      • [03. 1094. 拼车*](#03. 1094. 拼车*)

双指针

前置:多为有序

双向: 滑动窗口

单向: 快慢指针

题型

合并有序

翻转

链表

双指针七道链表

01 21. 合并两个有序链表

02. 86. 分隔链表*

03. 23. 合并 K 个升序链表

04. 19. 删除链表的倒数第 N 个结点*

05. 876. 链表的中间结点*

06. 141. 环形链表*

07. 142. 环形链表 II*

08. 160. 相交链表*

强化练习双指针链表

01 83. 删除排序链表中的重复元素

02. 264. 丑数 II*

03. 378. 有序矩阵中第 K 小的元素*

04. 373. 查找和最小的 K 对数字*

反转单链表-递归

01 206. 反转链表*

02. 92. 反转链表 II*

K 个一组反转链表

01 25. K 个一组翻转链表*

判断回文链表

01 234. 回文链表*

数组

双指针七道

01 27. 移除元素

02. 26. 删除有序数组中的重复项

03. 283. 移动零

04. 167. 两数之和 II

05. 344. 反转字符串

06. 5. 最长回文子串*

双指针强化练习

01 88. 合并两个有序数组*

02. 977. 有序数组的平方*

03. 360. 有序转化数组🔒

04. 151. 反转字符串中的单词*

nSum

01 1. 两数之和

02. 167. 两数之和 II

03. 15. 三数之和*

04. 18. 四数之和*

区域和/前缀和

使用场景

数组不变情况下,查询区间和

01 303. 区域和检索 - 数组不可变*

02. 304. 二维区域和检索 - 矩阵不可变*

差分

使用场景

对一个数组的区间进行加减

01 370. 区间加法🔒*

02. 1109. 航班预订统计

03. 1094. 拼车*

相关推荐
CoderYanger5 小时前
C.滑动窗口-求子数组个数-越长越合法——2799. 统计完全子数组的数目
java·c语言·开发语言·数据结构·算法·leetcode·职场和发展
萌>__<新6 小时前
力扣打卡每日一题————除自身外所有元素的乘积
数据结构·算法
xu_yule7 小时前
算法基础—搜索(2)【记忆化搜索+BFS+01BFS+Floodfill]
数据结构·算法
Queenie_Charlie8 小时前
数字去重(set)
数据结构·c++·set
Ayanami_Reii9 小时前
区间不同数的个数-树状数组/线段树/莫队/主席树
数据结构·c++·算法·线段树·树状数组·主席树·莫队
CoderYanger9 小时前
C.滑动窗口-求子数组个数-越长越合法——3325. 字符至少出现 K 次的子字符串 I
c语言·数据结构·算法·leetcode·职场和发展·哈希算法·散列表
sin_hielo9 小时前
leetcode 3606
数据结构·算法·leetcode
萌>__<新11 小时前
力扣打卡每日一题————最小覆盖子串
数据结构·算法·leetcode·滑动窗口·哈希表
长安er13 小时前
LeetCode 83/237/82 链表删除问题-盒子模型
数据结构·算法·leetcode·链表·力扣
重生之后端学习13 小时前
56. 合并区间
java·数据结构·后端·算法·leetcode·职场和发展