485. Max Consecutive Ones

Given a binary array, find the maximum number of consecutive 1s in this array.

Example 1:

Input: [1,1,0,1,1,1] Output: 3 Explanation: The first two digits or the last three digits are consecutive 1s. The maximum number of consecutive 1s is 3.

Note:

  • The input array will only contain 0 and 1.

  • The length of input array is a positive integer and will not exceed 10,000

    class Solution {
    public:
        int findMaxConsecutiveOnes(vector<int>& nums) {
            if(nums.size()==0)
                return 0;
                
            int cnt = 0;
            int max = 0;
            for(int i =0;i<nums.size();i++){
                if(nums[i] == 1){
                    ++cnt;
                }else{
                    max = max>cnt?max:cnt;
                    cnt = 0;
                }
            }
            
            int res = max>cnt?max:cnt;
            return res;
            
        }
    };

     

posted on 2017-03-05 07:56  123_123  阅读(75)  评论(0编辑  收藏  举报