双指针

前言

常用优化技巧,解决区间序列
应用背景:

  • 给定一个序列,通常是需要有序的
  • 问题和序列的区间有关

分为反向扫描,同向扫描

反向扫描

i,j 相反到中间相遇
例:判断是否回文

同向扫描

例:给定一个序列(无序)找到区间和等于m的

步骤:

  1. 计算前缀和
  2. if(sum[j]-sum[i]==m)
    输出答案
    if(sum[j]-sum[i]>m)
    i++;
    if(sum[j]-sum[j]<m)
    j++;
posted @ 2024-11-21 22:12  流氓兔LMT  阅读(1)  评论(0编辑  收藏  举报