leetcode-最长无重复子数组-79
Posted 天津 唐秙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode-最长无重复子数组-79相关的知识,希望对你有一定的参考价值。
题目要求
给定一个数组arr,返回arr的最长无重复元素子数组的长度,无重复指的是所有数字都不相同。
子数组是连续的,比如[1,3,5,7,9]的子数组有[1,3],[3,5,7]等等,但是[1,3,7]不是子数组
代码实现
class Solution {
public:
int maxLength(vector<int>& arr) {
// write code here
unordered_map<int, int> m;
int left = 0;
int right = 0;
int res = 0;
for(;right < arr.size(); right++)
{
m[arr[right]]++;
while(m[arr[right]] > 1)
{
m[arr[left++]]--;
}
res = max(res, right - left + 1);
}
return res;
}
};
以上是关于leetcode-最长无重复子数组-79的主要内容,如果未能解决你的问题,请参考以下文章
[LeetCode] Longest substring without repeating characters 最长无重复子串