• LeetCode 020 Valid Parentheses


    题目描述:Valid Parentheses

    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.

    分析:

    代码如下:

    class Solution {
    public:
        bool isValid(string s) {
            
            string left = "([{";
            string right = ")]}";
            stack<char> stk;
            
            for(auto c : s){
                
                //如果是"([{",则压入栈中
                if(left.find(c) != string::npos){
                    stk.push(c);
                }
                //如果不是"([{",则匹配
                else{
                    if(stk.empty() || stk.top() != left[right.find(c)])
                        return false;
                    else stk.pop();
                }
            }
            
            return stk.empty();
            
        }
    };

     Java:

        public boolean isValid(String s) {
    
            HashMap<Character, Character> map = new HashMap<Character, Character>();
            map.put('(', ')');
            map.put('[', ']');
            map.put('{', '}');
    
            Stack<Character> stack = new Stack<Character>();
    
            for (int i = 0; i < s.length(); i++) {
                char curr = s.charAt(i);
    
                if (map.keySet().contains(curr)) {
                    stack.push(curr);
                } else if (map.values().contains(curr)) {
                    if (!stack.empty() && map.get(stack.peek()) == curr) {
                        stack.pop();
                    } else {
                        return false;
                    }
                }
            }
    
            return stack.empty();
    
        }
  • 相关阅读:
    程序的机器级表示(一)
    virtual memory(1)
    Python定义参数数量可变的method的问题
    存储器结构层次(四)
    CAShapeLayer
    cell
    远程服务器推送
    keyboad
    search搜索
    Cocoopod
  • 原文地址:https://www.cnblogs.com/510602159-Yano/p/4278923.html
Copyright © 2020-2023  润新知