题目内容
给定一个长度为n的整数序列,请找出最长的不包含重复的数的连续区间,输出它的长度。
输入格式
第一行包含整数n。
第二行包含n个整数(均在0~100000范围内),表示整数序列。
输出格式
共一行,包含一个整数,表示最长的不包含重复的数的连续区间的长度。
数据范围
1≤n≤100000
输入样例
5
1 2 2 3 5
输出样例
3
题解
双指针算法是经常会在面试笔试中考的算法,是目前必须要准备好的算法之一。
在本题中,由于求解的是最长连续不重复子序列,因此,指针i和指针j的作用就是利用i和j移动,求出在i和j之间最大的不重复元素之间的距离,对i进行从0到n的迭代,j根据i进行迭代,求max_length。
代码
|