标签:var 输入 字符串分割 不用 字符 通过 进制 ima one
题目:
给定一个二进制数组, 计算其中最大连续1的个数。
示例 1:
输入: [1,1,0,1,1,1]
输出: 3
解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.
注意:
输入的数组只包含 0 和1。
输入数组的长度是正整数,且不超过 10,000。
通过率:

题解代码:
var findMaxConsecutiveOnes = function(nums) {
let arr=nums.join("");
arr=arr.split(‘0‘);
let i=0;
for(let j=0;j<arr.length;j++){
if(arr[j].length>i){
i=arr[j].length;
}
}
return i;
};
思路:
我们要思考,该如何拿到每段连续数字1的长度?所以我想到了将数组进行分割,以数字0为分界点,将每段一单独保存起来。
首先建立空数组用来存放改动过后的数组,join()方法用于把数组中的所有元素放入一个字符串,元素是通过指定的分隔符进行分隔的。在这里我们不用任何分隔符进行分割,所以假如nums=[1,1,0,1,0,1],那么使用join()方法得到的就是字符串[110101],然后用split()用于把一个字符串分割成字符串数组。括号里面填0代表以0为分界线分割字符串,如刚刚我们得到的字符串[110101]经过split方法后得到的就是字符串数组["11","1","1"],接着我们再比较每个字符串的长度,找出最长的那个字符串输出它的长度就可以了。
每周一题:最大连续1的个数
标签:var 输入 字符串分割 不用 字符 通过 进制 ima one
原文地址:https://www.cnblogs.com/sayg-1207/p/12952982.html