计算正数簇-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