LeetCode第485题

描述:

给定一个二进制数组, 计算其中最大连续1的个数。

示例 1:

输入: [1,1,0,1,1,1]
输出: 3
解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.

解题思路:定义一个result变量用来存取结果的值,定义一个“哨兵”now用来记录数组中连续元素1的个数,当遍历完数组的时候,result的值即为数组中最大连续1的个数。代码如下:

public int findMaxConsecutiveOnes(int[] nums){
		int result=0;
		int now=0;
		for(int i=0;i<nums.length;i++){
			if(nums[i]==1){
				now++;
			}
			else{
				now=0;
			}
			result=Math.max(now, result);
		}
		return result;
	}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章