올바른 괄호
- 나의 첫 풀이 코드이다
- 시간복잡도 테스트에서 통과하지 못하고 두개의 테스트가 통과하질 못했다..
- 이걸로 3시간을 넘게 잡아먹고있었다
function solution(s) {
if (s[0] === ")") {
return false;
}
let que = s.split("");
console.log(que);
let i = 1;
while (i < que.length) {
que.shift();
}
console.log(s.length % 2);
return que[0] === ")" && s.length % 2 !== 1 ? true : false;
}
- 더이상의 시간투자는 좋지않을듯 하여 레퍼런스를 참고했다
function solution(s) {
let bracket = 0;
for (const i of s) {
if (i === "(") {
bracket += 1;
continue;
}
if (!bracket) {
return false;
}
bracket -= 1;
}
return bracket === 0;
}
- 결국..많은 고민을 하다 검색으로 레퍼런스를 참고했다 보니 많이 찝찝하고 다시 리팩토링 해야겠다는 생각이 들었다
- 어떤 상황에서 어떤 반복문을 써야하는지를 잘 생각해가면서 문제를 풀어야겠다는 생각을 했다