File tree Expand file tree Collapse file tree 3 files changed +47
-0
lines changed
Expand file tree Collapse file tree 3 files changed +47
-0
lines changed Original file line number Diff line number Diff line change @@ -18,3 +18,4 @@ Profile on LeetCode: [fartem](https://leetcode.com/fartem/).
1818| 9. Palindrome Number | [ Link] ( https://leetcode.com/problems/palindrome-number/ ) | [ Link] ( ./lib/easy/palindrome_number.dart ) |
1919| 13. Roman to Integer | [ Link] ( https://leetcode.com/problems/roman-to-integer/ ) | [ Link] ( ./lib/easy/roman_to_integer.dart ) |
2020| 14. Longest Common Prefix | [ Link] ( https://leetcode.com/problems/longest-common-prefix/ ) | [ Link] ( ./lib/easy/longest_common_prefix.dart ) |
21+ | 20. Valid Parentheses | [ Link] ( https://leetcode.com/problems/valid-parentheses/ ) | [ Link] ( ./lib/easy/valid_parentheses.dart ) |
Original file line number Diff line number Diff line change 1+ // https://leetcode.com/problems/valid-parentheses/
2+ class Solution {
3+ bool isValid (String s) {
4+ var stack = [];
5+ for (int i = 0 ; i < s.length; i++ ) {
6+ var c = s[i];
7+ switch (c) {
8+ case '(' :
9+ case '{' :
10+ case '[' :
11+ stack.insert (0 , c);
12+ break ;
13+ case ')' :
14+ if (stack.isEmpty || stack.removeAt (0 ) != '(' ) {
15+ return false ;
16+ }
17+ break ;
18+ case '}' :
19+ if (stack.isEmpty || stack.removeAt (0 ) != '{' ) {
20+ return false ;
21+ }
22+ break ;
23+ case ']' :
24+ if (stack.isEmpty || stack.removeAt (0 ) != '[' ) {
25+ return false ;
26+ }
27+ break ;
28+ }
29+ }
30+ return stack.isEmpty;
31+ }
32+ }
Original file line number Diff line number Diff line change 1+ import 'package:leetcode_dart/easy/valid_parentheses.dart' ;
2+ import 'package:test/test.dart' ;
3+
4+ void main () {
5+ group (
6+ 'Example tests' ,
7+ () {
8+ final vp = Solution ();
9+ test ('true' , () => expect (true , vp.isValid ('()' )));
10+ test ('true' , () => expect (true , vp.isValid ('()[]{}' )));
11+ test ('false' , () => expect (false , vp.isValid ('(]' )));
12+ },
13+ );
14+ }
You can’t perform that action at this time.
0 commit comments