Leetcode 525. 连续数组

题目

在这里插入图片描述
Leetcode 525. 连续数组

代码(9.9 首刷看解析)

class Solution {
    
    
public:
    int findMaxLength(vector<int>& nums) {
    
    
        int maxLen = 0;
        unordered_map<int, int> mp;
        int counter = 0;
        mp[counter] = -1;
        for(int i = 0; i < nums.size(); i++) {
    
    
            int num = nums[i];
            if(num == 1) {
    
    
                counter++;
            } else {
    
    
                counter--;
            }
            if(mp.count(counter)) {
    
    
                int preIndex = mp[counter];
                maxLen = max(maxLen, i - preIndex);
            } else {
    
    
                mp[counter] = i;
            }
        }
        return maxLen;
    }
};

猜你喜欢

转载自blog.csdn.net/weixin_51322383/article/details/132773257