力扣1021.删除最外层的括号

力扣1021.删除最外层的括号

  • 遍历所有字符

    • 当)时 栈顶元素出栈
    • 当(时 入栈
    • 当栈为空时 说明恰好扫描了一个原语
    • 这个原语的首尾字符不应该放入答案
    • 因此调整if判断顺序使首尾不放进去即可
cpp 复制代码
  class Solution {
  public:
      string removeOuterParentheses(string s) {
          vector<char> st;
          string res;
          for(char c:s)
          {
              if(c == ')')
                  st.pop_back();
              //只要当前的字符不是首尾 就可以放
              if(!st.empty())
                  res.push_back(c);
              if(c == '(')
                  st.push_back(c);
          }
          return res;
      }
  };
相关推荐
H CHY12 小时前
C++代码
c语言·开发语言·数据结构·c++·算法·青少年编程
alphaTao12 小时前
LeetCode 每日一题 2025/12/22-2025/12/28
算法·leetcode
xiaolang_8616_wjl12 小时前
c++题目_传桶(改编于atcoder(题目:Heavy Buckets))
数据结构·c++·算法
中國龍在廣州13 小时前
生成不遗忘,「超长时序」世界模型,北大EgoLCD长短时记忆加持
人工智能·深度学习·算法·自然语言处理·chatgpt
亓才孓13 小时前
java中的Math.Radom拓展
开发语言·python·算法
霍田煜熙13 小时前
CBMS最新源码
算法
NAGNIP13 小时前
主流的激活函数有哪些?
算法
NAGNIP13 小时前
Self-Attention 为什么要做 QKV 的线性变换?又为什么要做 Softmax?
算法
core51213 小时前
PageRank 算法:互联网的“人气投票”
算法·pagerank
小白菜又菜13 小时前
Leetcode 1523. Count Odd Numbers in an Interval Range
算法·leetcode