Skip to content

Commit ce4b722

Browse files
committed
feat: add valid parentheses solution
1 parent e93c1d0 commit ce4b722

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

โ€Žvalid-parentheses/mangodm-web.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
class Solution:
2+
def isValid(self, s: str) -> bool:
3+
"""
4+
- Idea: ์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด์„ ์ˆœํšŒํ•˜๋ฉด์„œ ์—ฌ๋Š” ๊ด„ํ˜ธ๋Š” ์Šคํƒ์— ๋„ฃ๊ณ , ๋‹ซ๋Š” ๊ด„ํ˜ธ๋Š” ์Šคํƒ์˜ ์ตœ์ƒ๋‹จ ์š”์†Œ์™€ ๋งค์นญ๋˜๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.
5+
- Time Complexity: O(n), n์€ ์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด์˜ ๊ธธ์ด. ๋ชจ๋“  ๋ฌธ์ž๋ฅผ ํ•œ๋ฒˆ์”ฉ์€ ์ˆœํšŒํ•œ๋‹ค.
6+
- Space Complexity: O(n), ์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด์ด ๋ชจ๋‘ ์—ฌ๋Š” ๊ด„ํ˜ธ์ผ ๊ฒฝ์šฐ ์Šคํƒ์— ์ €์žฅ๋œ๋‹ค.
7+
"""
8+
bracket_map = {"(": ")", "[": "]", "{": "}"}
9+
stack = []
10+
11+
for char in s:
12+
if char in bracket_map:
13+
stack.append(char)
14+
elif not stack or bracket_map[stack.pop()] != char:
15+
return False
16+
17+
return not stack

0 commit comments

Comments
ย (0)