计算0-1数组中连续1的出现次数

时间:2013-10-21 14:59:23

标签: java

我有一组1和0。如何计算连续1的最大数量?

(例如,x = [1 1 0 0 1 1 0 0 0 1 0 0 1 1 1])。答案是3,因为连续发生的最大次数是3次。 非常感谢你。

3 个答案:

答案 0 :(得分:1)

迭代数组,保持你看到的连续1个数的计数。每当看到1时,递增计数。每当看到0时,将计数重置为零。您的问题的答案是迭代期间看到的最大计数器值。

答案 1 :(得分:1)

int cnt = 0,max=0;
for(int i=0;i<x.length;i++){
   cnt=0;
   while(i<x.length&&x[i]==1){
      cnt++;
      i++;
   }
   if(cnt>max) max=cnt;
}

这应该有效

答案 2 :(得分:1)

因为这有点像家庭作业,所有你得到的是算法!

初始化计数器,最大
对于阵列中的所有元素 如果元素为'1' 递增计数器
否则
max = GetMaxOf(max,counter)
重置计数器
结束如果

结束