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;
    }
};
上一篇:Linux中xargs批量删除-复制-替换-创建文件


下一篇:图解CSS3制作圆环形进度条的实例教程