문제
문자열 str을 첫 번째이자 유일한 인수로 사용하는 JavaScript 함수입니다.
중복 제거는 두 개의 인접하고 동일한 문자를 선택하고 제거하는 것으로 구성됩니다.
더 이상 할 수 없을 때까지 문자열 str에서 중복 제거를 반복적으로 수행합니다.
그리고 우리의 함수는 이러한 모든 중복 제거가 이루어진 후에 마침내 최종 문자열을 반환해야 합니다.
예를 들어, 함수에 대한 입력이 -
인 경우const str = 'kllkmk';
그러면 출력은 다음과 같아야 합니다. -
const output = 'mk';
출력 설명:
먼저 문자열에서 'll'을 제거하여 'kkmk'로 줄인 다음 'kk'를 제거한 후 새 문자열을 반환합니다.
예시
이에 대한 코드는 -
const str = 'kllkmk';
const removeDuplicates = (str = '') => {
const arr = [];
for(const char of str){
if(char === arr[arr.length - 1]){
while(arr[arr.length - 1] === char){
arr.pop();
};
} else {
arr.push(char);
};
};
return arr.join('');
};
console.log(removeDuplicates(str)); 출력
콘솔의 출력은 -
mk