tag数组-刷题预备知识-3.数组中的 双指针 ,快慢指针,滑动窗口 (待补充,扩展)

一, 概述

  • 双指针主要是用于遍历数组, 两个指针指向不同的元素,从而协同完成任务.当然, 我们也可以延伸到多个数组的多个指针
    在这里插入图片描述
    [用法和应用场景]

在这里插入图片描述
在这里插入图片描述

一, 左右指针(相向双指针)

[定义]
在这里插入图片描述


典型例题:

1. 两数之和

lt1. 两数之和

2. lt167. 两数之和II , lt15.三数之和

lt167. 两数之和II , lt15.三数之和

3.


lt 二分查找法

lt 633. 平方数之和

剑指Offer. 奇偶数排序

二, 快慢指针(同向双指针)


典型例题:

1.lt.26-删除数组中的重复元素+lt.283-移动零

  1. lt.26-删除数组中的重复元素+lt.283-移动零

三, 滑动窗口(同向双指针)

模板伪代码:

初始化慢指针 = 0
初始化 ans

for 快指针 in 可迭代集合
   更新窗口内信息
   while 窗口内不符合题意
      扩展或者收缩窗口
      慢指针移动
   更新答案
返回 ans

详细文章:

  1. Github-滑动窗口
  2. 知乎-滑动窗口

四, 分离指针

1. lt349. 两个数组的交集

lt349. 两个数组的交集

2. lt 350. 两个数组的交集 II

详细文章:

  1. 双指针
posted @   青松城  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示