吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2552|回复: 17
收起左侧

[C&C++ 原创] c++算法练习--栈

[复制链接]
anzhenjiang 发表于 2019-7-29 09:35

每日水一题

链接:https://leetcode-cn.com/problems/permutations

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

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。

示例 1:

输入: "()"
输出: true
示例 2:

输入: "()[]{}"
输出: true
示例 3:

输入: "(]"
输出: false
示例 4:

输入: "([)]"
输出: false
示例 5:

输入: "{[]}"
输出: true

使用栈来存字符串,当碰到闭括号时,判断栈顶是否为相应的开括号

    bool isValid(string s) {
        stack<char> st;
        for(int i = 0 ; i < s.length(); i ++){
            if(s[i] == '(' || s[i] == '{' || s[i] == '[') st.push(s[i]);
            if(s[i] == ')'){
                if(st.size() != 0 && st.top() == '(') st.pop();
                else return false;
            }
            if(s[i] == '}'){
                if(st.size() != 0 && st.top() == '{') st.pop();
                else return false;
            }
            if(s[i] == ']'){
                if(st.size() != 0 && st.top() == '[') st.pop();
                else return false;
            }
        }
        if(st.size() != 0) return false;
        return true;
    }

免费评分

参与人数 1吾爱币 +2 热心值 +1 收起 理由
苏紫方璇 + 2 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| anzhenjiang 发表于 2019-7-30 14:57
北溟鱼 发表于 2019-7-29 11:20
弱弱问一句,最后存文件后缀名是啥

cpp,这个只是核心代码,没有其他的头文件,命名空间之类的
 楼主| anzhenjiang 发表于 2019-7-30 14:58
Cl_Slaid 发表于 2019-7-29 11:21
碰到闭括号再判断就行了,排除掉错误情况就行了orz...比我写得精简

哈哈哈,大家一起水题
JuncoJet 发表于 2019-7-29 09:59
JuncoJet 发表于 2019-7-29 10:00
不对,这个栈是STL,不能屯屯屯
原谅我水错了……
reb0rn 发表于 2019-7-29 10:02
多谢大佬分享
闲月疏云 发表于 2019-7-29 10:02
JuncoJet 发表于 2019-7-29 10:00
不对,这个栈是STL,不能屯屯屯
原谅我水错了……

我还在想STL怎么就屯起来了
閒雲野鶴 发表于 2019-7-29 10:15
感谢大佬分享
Pollingsoon 发表于 2019-7-29 10:28
表示我看不懂
liuminxin45 发表于 2019-7-29 10:56
大佬,我也想刷Leetcode,有APP可以刷吗
 楼主| anzhenjiang 发表于 2019-7-29 11:01
liuminxin45 发表于 2019-7-29 10:56
大佬,我也想刷Leetcode,有APP可以刷吗

好像是没有APP的,我一直都是在网站上刷的
 楼主| anzhenjiang 发表于 2019-7-29 11:02
JuncoJet 发表于 2019-7-29 10:00
不对,这个栈是STL,不能屯屯屯
原谅我水错了……

哈哈哈哈
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 13:33

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表