zoukankan      html  css  js  c++  java
  • LeetCode: 485 Max Consecutive Ones(easy)

    题目:

    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

    代码:

    别人的:

     1 class Solution {
     2 public:
     3     int findMaxConsecutiveOnes(vector<int>& nums) {
     4         int count = 0, max = 0;
     5         for (int i = 0; i < nums.size(); i++) {
     6             if (nums[i] == 1 && (!i || nums[i - 1] != 1)) count = 1;
     7             else if (i && nums[i] == 1 && nums[i - 1] == 1) count++;
     8             if (max < count) max = count;
     9         }
    10         if (max < count) max = count;
    11         return max;
    12     }
    13 };

    自己的:

     1 class Solution {
     2 public:
     3     int findMaxConsecutiveOnes(vector<int>& nums) {
     4         int result = 0;
     5         int tem = 0;
     6         nums.push_back(0);
     7         for (auto c : nums){
     8             if(c == 0){
     9                 if ( tem > result)
    10                     result = tem;
    11                 tem = 0;
    12             }
    13             else
    14                 tem++;
    15         }
    16         return result;
    17     }
    18 };
  • 相关阅读:
    人生无常 淡然处之
    对PHP开发的认知
    专家路线
    很少接触的文学
    懒加载
    Markdown入门 学习
    (转载)iOS开发历程书籍推荐
    ObjectiveC1基础代码——类和对象
    day11基础代码——函数指针
    day6
  • 原文地址:https://www.cnblogs.com/llxblogs/p/7442488.html
Copyright © 2011-2022 走看看