双指针算法
1.双指针算法主要是为了提高朴素算法的复杂度,即O(n^2)的算法,优化为O(n)的算法。
2.常见模板
for (int i = 0, j = 0; i < n; i ++ )
{while (j < i && check(i, j)) j ++ ;// 具体问题的逻辑
}
常见问题分类:(1) 对于一个序列,用两个指针维护一段区间(2) 对于两个序列,维护某种次序,比如归并排序中合并两个有序序列的操作
相关题目链接:
https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/