나는 첫 번째 질문 인 Reduce duplicate characters to a desired minimum을 골머리를 앓 았고, 내가 생각해 냈던 것보다 더 우아한 대답을 찾고있다. 그것은 테스트를 통과하지만 다른 솔루션을보기에 호기심이 듭니다. 샘플 테스트는 다음과 같습니다문자열의 중복 문자를 주어진 최소값으로 줄이기
reduceString('aaaabbbb', 2) 'aabb'
reduceString('xaaabbbb', 2) 'xaabb'
reduceString('aaaabbbb', 1) 'ab'
reduceString('aaxxxaabbbb', 2) 'aaxxaabb'
내 솔루션 (즉,이 테스트를 통과) :
reduceString = function(str, amount) {
var finalString = '', cL = '', counter;
str.split('').forEach(function(i){
if (i !== cL) counter = 0;
counter++;
cL = i;
if (counter <= amount) finalString = finalString + i;
});
return finalString;
}
당신이 원하는처럼 내 최고의 솔루션이 될 것 같아요 순차 반복되는 문자가 아니라 반복? – RobG
@RobG yup은 테스트 대상인 샘플을 기반으로합니다. – Rk220