
문제: https://school.programmers.co.kr/learn/courses/30/lessons/12909?language=javascript
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제요약
- 문자열 s가 바르게 짝지은 괄호인 경우 true, 아니면 false를 반환해라.
- 바르게 짝지은 괄호는 '(' 문자로 열렸을 때 ')'로 닫힌다.
- 문자열 s의 길이는 1 이상 100,000 이하다.
풀이과정
function solution(s){
if (s[0] === ')') {
return false;
};
let stack = [];
for (let i = 0; i < s.length; i++) {
if (s[i] === '(') {
stack.push(s[i]);
} else {
if (stack.pop() !== '(') {
return false;
}
};
}
return stack.length === 0;
}
스택을 활용하면 쉽게 문제를 풀 수 있다.
'알고리즘, 자료구조 > 프로그래머스' 카테고리의 다른 글
| [Javascript/Python] 프로그래머스 - N개의 최소공배수 (0) | 2023.05.05 |
|---|---|
| [Javascript] 프로그래머스 - 피로도 (0) | 2023.04.16 |
| [Javascript] 프로그래머스 - 위장 (0) | 2022.09.19 |
| [Javascript] 프로그래머스 디스크 컨트롤러 (0) | 2021.03.24 |
| 프로그래머스 알고리즘 복습하기 (0) | 2020.08.04 |