解题方案:
var largeGroupPositions = function(s) {
var start=0,end=0; // 存储相同字符的始末位置
var arr =[];
for(let i=1;i<s.length;i++){
if(s[i]==s[i-1]){ //如果和前一个字符相同
end=i; // 更新结束位置
if(i==s.length-1&&i-start>=2){ //相同字符一直到最后一位的情况处理
arr.push([start,i]);
}
}else{ // 如果和前一个字符不同
if(end-start>=2){ // 大于或等于三个连续字符
arr.push([start,end]);
}
start = i; //更新开始结束位置
end = i;
}
}
return arr
};