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 |
댓글