package g0001_0100.s0020_valid_parentheses; // #Easy #Top_100_Liked_Questions #Top_Interview_Questions #String #Stack // #Data_Structure_I_Day_9_Stack_Queue #Udemy_Strings #Big_O_Time_O(n)_Space_O(n) // #2024_02_11_Time_1_ms_(98.78%)_Space_41.6_MB_(32.59%) import java.util.Stack; @SuppressWarnings("java:S1149") public class Solution { public boolean isValid(String s) { Stack stack = new Stack<>(); for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); if (c == '(' || c == '[' || c == '{') { stack.push(c); } else if (c == ')' && !stack.isEmpty() && stack.peek() == '(') { stack.pop(); } else if (c == '}' && !stack.isEmpty() && stack.peek() == '{') { stack.pop(); } else if (c == ']' && !stack.isEmpty() && stack.peek() == '[') { stack.pop(); } else { return false; } } return stack.isEmpty(); } }