본문 바로가기
Research/Coding Test

20. Valid Parentheses

by RIEM 2023. 3. 21.
728x90

Problem

https://leetcode.com/problems/valid-parentheses/

Intuition

Approach

짝이 맞는지 확인하려면 짝 지어진 것들은 제거하고 남은 것만 확인하면 된다. [], (), {}이 있는지 무한반복으로 확인하고 만약 있으면 replace 메소드로 제거해주고, 없으면 반환한 뒤 남은 문자열이 있는지 확인한다. 만약 있으면 모두 제거된 것이 아니기 때문에 거짓을 반환하고, 남는 것이 없을 경우 모두 처리가 되었다는 의미이기 때문에 참을 반환한다.

Code

/**
 * @param {string} s
 * @return {boolean}
 */
var isValid = function(s) {

//   []의 인덱스 위치. 없으면 -1. 있으면 0 ~

  while(s.indexOf('[]') >= 0 || s.indexOf('()') >= 0 || s.indexOf('{}') >= 0) {
    s = s.replaceAll('[]', '');
    s = s.replaceAll('()', '');
    s = s.replaceAll('{}', '');
  }

//   s에 남는 것이 없을 경우, 모든 것이 짝이 맞아 처리되었기 때문에 true 판정
  if(!s.length) {
    return true;
  } else {
    return false;
  }

};
728x90

'Research > Coding Test' 카테고리의 다른 글

스택/큐_기능개발  (0) 2023.03.21
스택/큐_같은 숫자는 싫어  (0) 2023.03.21
13. Roman to Integer  (0) 2023.03.20
1. Two Sum  (0) 2023.03.19
724. Find Pivot Index  (0) 2023.03.19

댓글