有效的括号--leetcode

  • 有效的括号

给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。

左括号必须以正确的顺序闭合。

每个右括号都有一个对应的相同类型的左括号。

示例 1:

输入:s = "()"

输出:true

示例 2:

输入:s = "()[]{}"

输出:true

示例 3:

输入:s = "(]"

输出:false

示例 4:

输入:s = "([])"

输出:true

示例 5:

输入:s = "([)]"

输出:false

cpp 复制代码
class Solution {
public:
    bool isValid(string s) {
        stack<char> stk;
        for (int i = 0; i < s.size(); ++i) {
            if (stk.empty()) {
                stk.push(s[i]);
            } else {
                if (stk.top() == '[' && s[i] == ']') {
                    stk.pop();
                } else if (stk.top() == '{' && s[i] == '}') {
                    stk.pop();
                } else if (stk.top() == '(' && s[i] == ')') {
                    stk.pop();
                } else {
                    stk.push(s[i]);
                }
            }
        }
        if (stk.empty()) {
            return true;
        }
        return false;
    }
};
相关推荐
皮卡祺q20 小时前
【算法-0】背包问题(三维+二维)
java·javascript·算法
葫三生20 小时前
《论三生原理》对《周易》《道德经》的一次根本性重写?
人工智能·算法·计算机视觉·区块链·量子计算
心中有国也有家20 小时前
ascend-boost-comm:一次写完,到处复用——算子公共平台的 M×N 哲学
人工智能·经验分享·笔记·分布式·算法
AI科技星20 小时前
空间圆柱螺旋运动第一性原理终极推导·证明·核验·全量纲闭环
开发语言·人工智能·算法·计算机视觉·量子计算
青天喵喵20 小时前
Linux Wi-Fi 实战指南:AP / STA 实战用例(实战篇一)
linux·网络·架构·智能路由器·嵌入式·wi-fi
qq74223498421 小时前
全面深入的C#核心知识体系与编程实践精要——从语法基础到高级特性系统学习指南
java·算法·c#
广州灵眸科技有限公司21 小时前
瑞芯微(EASY EAI)RV1126B ubuntu系统SDK源码获取
linux·运维·ubuntu
代码中介商21 小时前
排序算法完全指南(五):快速排序深度详解
数据结构·算法·排序算法
Irissgwe21 小时前
二、Socket编程UDP
linux·网络·网络协议·udp·socket·socket编程
Eloudy21 小时前
定常约束的情况下,质点矢径 r_i 不显含时间t
人工智能·算法·机器学习