随笔分类 -  双指针算法

800. 数组元素的目标和(双指针算法)
摘要:给定两个升序排序的有序数组A和B,以及一个目标值x。数组下标从0开始。请你求出满足A[i] + B[j] = x的数对(i, j)。 数据保证有唯一解。 输入格式 第一行包含三个整数n,m,x,分别表示A的长度,B的长度以及目标值x。 第二行包含n个整数,表示数组A。 第三行包含m个整数,表示数组B 阅读全文
posted @ 2020-01-17 15:03 qdu_lkc 阅读(333) 评论(0) 推荐(0)
799. 最长连续不重复子序列(双指针算法)
摘要:给定一个长度为n的整数序列,请找出最长的不包含重复数字的连续区间,输出它的长度。 输入格式 第一行包含整数n。 第二行包含n个整数(均在0~100000范围内),表示整数序列。 输出格式 共一行,包含一个整数,表示最长的不包含重复数字的连续子序列的长度。 数据范围 1≤n≤1000001≤n≤100 阅读全文
posted @ 2020-01-17 13:15 qdu_lkc 阅读(308) 评论(0) 推荐(0)
双指针算法模板
摘要:主要用途:降低时间复杂度 对于一个O(n^2)的问题 for(int i=0;i<n;i++) for(int j=0;j<n;j++) ...... 时间复杂度就降低到了O(2n),因为两个指针i,j总共移动的次数不超过2n for(int i=0,j=0;i<n;i++){ while(j<i 阅读全文
posted @ 2020-01-17 10:40 qdu_lkc 阅读(185) 评论(0) 推荐(0)