클릭해서 문제 전체 보기🔼
function solution(s) {
let newArr = [];
s.split("").forEach((ele) => {
if (newArr[newArr.length - 1] == ele) {
newArr.pop();
} else {
newArr.push(ele);
}
});
if (newArr.length != 0) return 0;
else return 1;
}
📢 풀이 설명
class Stack {
constructor() {
this.arr = [];
}
push(data) {
this.arr.push(data);
}
pop(index) {
return this.arr.splice(index, 2);
}
}
function solution(s) {
let sArr = s.split("");
let stack = new Stack();
for (i = 0; i < sArr.length; i++) {
stack.push(sArr[i]);
if (stack.arr[stack.arr.length - 2] == sArr[i]) stack.pop(stack.arr.length - 2);
}
if (stack.arr.length != 0) return 0;
else return 1;
}
채점 결과: 정확성 테스트 모두 통과, 효율성 테스트 2에서 실패(시간 초과)
📢 풀이 설명
스택을 사용하는 것보다, 효율 좋은 함수를 사용하는 게 더 중요하다는 것을 느꼈습니다.,,
큰 도움이 되었습니다, 감사합니다.