统计正数的簇 - Javascript 数组


假设我们有一个这样的数字数组 -

const arr = [-1,-2,-1,0,-1,-2,-1,-2,-1,0,1,0];

我们需要编写一个 JavaScript 函数,该函数计算数组中连续非负(正数和 0)数字的组数。

如下所示,我们有从索引 3 到 3 的连续非负数(只有一个元素,但仍然是一个簇),它形成了一个组,然后从 9 到数组末尾形成了第二个组。

因此,对于此数组,函数应返回 2。

示例

以下是代码 -

const arr = [-1,-2,-1,0,-1,-2,-1,-2,-1,0,1,0];
const positiveClusters = arr => {
   return arr.reduce((acc, val, ind) => {
      if(val >= 0 && (arr[ind+1] < 0 || typeof arr[ind+1] === 'undefined')){
         acc++;
      };
      return acc;
   }, 0);
};
console.log(positiveClusters(arr));

输出

这将在控制台中生成以下输出 -

2

更新于: 18-09-2020

205 次浏览

开启你的职业生涯

完成课程并获得认证

开始
广告