[프로그래머스] 올바른 괄호 - JavaScript

이수동·2022년 5월 22일
0
post-thumbnail

프로그래머스 Level 2 - 올바른 괄호


📌 생각한 풀이 방법

  1. 자료구조 Stack을 활용한다.
    1-1. "("가 나오면 해당 문자를 answer에 push한다.
    1-2. ")"가 나오면 answer을 pop한다.
  2. answer에 문자의 존재 유무에 따라 답을 반환한다.

📌 풀이

function solution(s) {
  let answer = [];

  for (let i = 0; i < s.length; i++) {
    if (i === 0 && s[i] === ")") {
      return false;
    }

    let current = s[i];
    switch (current) {
      case "(": // "("가 나오면
        answer.push("("); // 해당 문자를 answer에 push
        break;
      case ")": // ")"가 나오면
        if (answer.length === 0) {
          return false;
        }
        answer.pop(); // answer을 pop
        break;
    }
  }

  return answer.length ? false : true; // answer에 문자의 존재 유무에 따라 답을 반환
}
profile
기록을 통한 성장하기 🧐

0개의 댓글