C++ | Leetcode C++题解之第525题连续数组

题目:

题解:

cpp 复制代码
class Solution {
public:
    int findMaxLength(vector<int>& nums) {
        int maxLength = 0;
        unordered_map<int, int> mp;
        int counter = 0;
        mp[counter] = -1;
        int n = nums.size();
        for (int i = 0; i < n; i++) {
            int num = nums[i];
            if (num == 1) {
                counter++;
            } else {
                counter--;
            }
            if (mp.count(counter)) {
                int prevIndex = mp[counter];
                maxLength = max(maxLength, i - prevIndex);
            } else {
                mp[counter] = i;
            }
        }
        return maxLength;
    }
};
相关推荐
SUN_Gyq1 小时前
C/C++中数组定义和初始化的方式有哪些?数组名字有什么含义?
java·c语言·c++
1 9 J1 小时前
数据结构 C/C++(实验一:线性表)
c语言·数据结构·c++
passer__jw7671 小时前
【LeetCode】【算法】739. 每日温度
算法·leetcode
螺蛳粉只吃炸蛋的走风1 小时前
网络编程IO多路复用之poll模式
网络·c++·面试·poll·阻塞与非阻塞
会写代码的饭桶1 小时前
【C++刷题】力扣-#566-重塑矩阵
c++·leetcode·矩阵
fengbizhe1 小时前
qt获取本机IP和定位
开发语言·c++·qt·tcp/ip
凯子坚持 c2 小时前
纵然千万数据流逝,唯独vector长存
c++
何曾参静谧2 小时前
「C/C++」C/C++标准库 之 #include<cstddef> 常用定义和宏
c语言·开发语言·c++
木宇(记得热爱生活)2 小时前
C++ <string> 标头文件详解
开发语言·c++
你有抖音吗3 小时前
【每日 C/C++ 问题】
开发语言·c++