1 parent 42955da commit 7ac5f3dCopy full SHA for 7ac5f3d
1 file changed
leetcode/Easy/valid_parentheses.py
@@ -0,0 +1,33 @@
1
+import unittest
2
+
3
4
+class Solution:
5
+ PARENTHESES = {
6
+ ")": "(",
7
+ "}": "{",
8
+ "]": "[",
9
+ }
10
11
+ def is_valid(self, s: str) -> bool:
12
+ stack = []
13
+ for c in s:
14
+ if c not in self.PARENTHESES:
15
+ stack.append(c)
16
+ else:
17
+ if not stack or stack.pop() != self.PARENTHESES[c]:
18
+ return False
19
+ return len(stack) == 0
20
21
22
+class Test(unittest.TestCase):
23
+ def test_is_valid(self):
24
+ solution = Solution()
25
+ self.assertEqual(solution.is_valid("()"), True)
26
+ self.assertEqual(solution.is_valid("()[]{}"), True)
27
+ self.assertEqual(solution.is_valid("(}"), False)
28
+ self.assertEqual(solution.is_valid("["), False)
29
+ self.assertEqual(solution.is_valid("]"), False)
30
31
32
+if __name__ == "__main__":
33
+ unittest.main()
0 commit comments