zoukankan      html  css  js  c++  java
  • LeetCode

    题目:

    Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.

    The brackets must close in the correct order, "()" and "()[]{}" are all valid but "(]" and "([)]" are not.

    思路:

    用栈来解决。

    package ds;
    
    import java.util.Stack;
    
    public class ValidParentheses {
    
        public boolean isValid(String s) {
            Stack<Character> stack = new Stack<Character>();
            int len = s.length();
            for (int i = 0; i < len; ++i) {
                char c = s.charAt(i);
                switch (c) {
                case '(':
                    
                case '[':
                    
                case '{':
                    stack.push(c);
                    break;
                case ')':
                    if (stack.isEmpty() || stack.pop() != '(')
                        return false;
                    break;
                case ']':
                    if (stack.isEmpty() || stack.pop() != '[')
                        return false;
                    break;
                case '}':                
                    if (stack.isEmpty() || stack.pop() != '{')
                        return false;
                    break;
                }
            }
            
            return stack.isEmpty();
        }
        
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            ValidParentheses v = new ValidParentheses();
            // Test case 1
            System.out.println(v.isValid("()[]}"));
            // Test case 2
            System.out.println(v.isValid("("));
        }
    
    }
  • 相关阅读:
    jQ插件开发规范(转)
    一个圆环形状的进度条。
    [转载]jQuery 图表插件 jqChart 使用
    作业.mp4
    嘣嘣嘣嘣嘣哥TnT
    我对GIT的认识`
    git的理解
    文章读后感
    团队作业7
    团队作业6
  • 原文地址:https://www.cnblogs.com/null00/p/5060243.html
Copyright © 2011-2022 走看看