LeetCode 20 Valid Parentheses (括号匹配问题)
Problem: 括号匹配问题。
  使用栈,先进后出!
参考代码1:
package leetcode_50; import java.util.Stack; /*** * * @author pengfei_zheng * 括号匹配问题 */ public class Solution20 { public static boolean isValid(String s) { Stack<Character> stack = new Stack<>(); int len = s.length(); for(int i=0;i<len;i++){ char c = s.charAt(i); if(c=='(' || c=='{' || c=='[') stack.push(c); if(c==')'){ if(stack.isEmpty()) return false; else if('('!=stack.pop()) return false; } if(c=='}'){ if(stack.isEmpty()) return false; else if('{'!=stack.pop()) return false; } if(c==']'){ if(stack.isEmpty()) return false; else if('['!=stack.pop()) return false; } } if(!stack.isEmpty()) return false; else return true; } public static void main(String[]args){ String s="[[(])]"; System.out.println(isValid(s)); } }
参考代码2:
public boolean isValid(String s) { Stack<Character> stack = new Stack<Character>(); for (char c : s.toCharArray()) { if (c == '(') stack.push(')'); else if (c == '{') stack.push('}'); else if (c == '[') stack.push(']'); else if (stack.isEmpty() || stack.pop() != c) return false; } return stack.isEmpty(); }
作者: 伊甸一点
出处: http://www.cnblogs.com/zpfbuaa/
本文版权归作者伊甸一点所有,欢迎转载和商用(须保留此段声明),且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
原文链接 如有问题, 可邮件(zpflyfe@163.com)咨询.

                
            
        
浙公网安备 33010602011771号