class Solution { public: /** * * @param arr int整型vector the array * @return int整型 */ int maxLength(vector<int>& arr) { // write code here unordered_map<int, int> is_key; // hash_map记录已有元素 int len = 0, tmp = 0; for(int i = 0; i < arr.size(); i++){ if(is_key.find(arr[i]) != is_key.end()){ i = is_key[arr[i]] + 1;// is_key记录元素下标 len = max(len, tmp); is_key.clear(); //从第一个重复元素的下一个元素开始重新计数 tmp = 0; } is_key[arr[i]] = i; tmp++; } return max(len, tmp); } };