반응형
Notice
Hot Posts
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 코딩테스트
- 삼성 SW역량테스트 기출
- 딥러닝
- BOJ
- OS
- Java
- 직무면접
- 수학
- 1차면접
- 백준
- 등촌동속눈썹연장
- 다시보기
- level2
- 시뮬레이션
- 투포인터
- 운영체제
- 정렬
- 프로그래머스
- 포스코
- 마곡속눈썹연장
- 마곡속눈썹펌
- 추석트래픽
- leetcode
- 삼성
- 등촌동속눈썹펌
- 카카오
- ai/bigdata
- 리트코드
- 삼성SW역량테스트
- 알고리즘
Archives
- Today
- Total
기록하는 습관을 들이자
[ leetcode ] Valid Parentheses 본문
반응형
문제
leetcode.com/problems/valid-parentheses/
Valid Parentheses - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
문제 풀이
주어진 괄호 문자열이 올바른 문자열인지 판단하는 간단한 알고리즘입니다. "스택" 자료구조를 사용하여 문제를 해결하면 됩니다. 문자열에서 등장할 수 있는 괄호 유형에 대해 번호를 매긴 후, 여는 괄호가 등장할 때는 해당 괄호에 대응하는 번호를 스택에 push 해주고, 닫는 괄호가 등장할 때는 현재 스택의 맨 위에 저장된 여는 괄호가 현재 닫는 괄호와 쌍이 일치하는지를 판단하여 일치하지 않으면 false를 리턴, 일치하면 스택의 맨 위 요소를 pop 해주면 됩니다.
주의할 점은 문자열을 for문을 이용하여 다 탐색을 한 후 마지막에 스택이 비어있는지 여부를 판단해주어야 합니다. 문자열을 다 탐색했는데 스택에 아직 element가 남아있다면 그것은 올바른 괄호 문자열이 아니기에 false를 리턴해주어야 합니다.
코드
class Solution {
public boolean isValid(String s) {
Stack<Integer> st = new Stack<Integer>();
for(int i=0;i<s.length();i++){
if(s.charAt(i) == '('){
st.push(1);
}else if(s.charAt(i) == '['){
st.push(2);
}else if(s.charAt(i) == '{'){
st.push(3);
}else if(s.charAt(i) == ')'){
if(st.empty() || st.peek() != 1)
return false;
st.pop();
}else if(s.charAt(i) == ']'){
if(st.empty() || st.peek() != 2)
return false;
st.pop();
}else if(s.charAt(i) == '}'){
if(st.empty() || st.peek() != 3)
return false;
st.pop();
}
}
if(!st.empty())
return false;
return true;
}
}
반응형
'알고리즘 > Leetcode' 카테고리의 다른 글
[ leetcode ] Get Maximum in Generated Array (0) | 2021.01.18 |
---|---|
[ leetcode ] Kth Largest Element in an Array (0) | 2021.01.18 |
[ leetcode ] The kth Factor of n (0) | 2021.01.06 |
[ leetcode ] Increasing Order Search Tree (0) | 2021.01.05 |
Comments