짝지어 제거하기 자바스크립트

HyosikPark·2020년 11월 28일
0

알고리즘

목록 보기
48/72
function solution(s) {
    let answer = [];
    
    let i = 0;
    while(i < s.length) {
        
        answer[answer.length-1] == s[i] ? answer.pop() : answer.push(s[i])
        
        i++;
    }
    return answer.length ? 0 : 1
}

처음에 반복문을 사용하여 replace로 겹치는 부분을 제거하면서 풀었더니 시간초과로 실패가 떴다.
replace 또는 splice로 제거할때마다 index를 처음부터 초기화해서 다시 돌려야하기 때문에 비효율적이다.
한번의 반복문으로 겹치지 않는 문자는 push 겹치는 문자는 pop하여 풀면 훨씬 시간이 단축된다.

0개의 댓글