力扣 字符串解码

维护一个放数字的栈,一个放字母的栈

遇到[把数字和字母入栈,遇到]把当前字母循环加上数字栈头遍的字母栈头

cpp 复制代码
class Solution {
public:
    string decodeString(string s) {
     string ans="";
     stack<int>sz;
 stack<string>zm;里面是string 还是Char,要看你定义往里加的字符是哪个类型
     int count=0;
     for(auto& x:s){
        if(isdigit(x))
            count=10*count+x-'0';
        else if(x=='['){
            sz.push(count);
            count=0;
            zm.push(ans);
            ans="";     }
        else if(isalpha(x))
        ans+=x;
        else if(x==']'){
            int n=sz.top();
            string cur=zm.top();
            sz.pop();
            zm.pop();
            while(n--){
                cur+=ans;   }
            ans=cur;}    }
     return ans;}};
相关推荐
谭欣辰几秒前
详细讲解 C++ 有向无环图(DAG)及拓扑排序
c++·算法·图论
承渊政道5 分钟前
【递归、搜索与回溯算法】(掌握记忆化搜索的核心套路)
数据结构·c++·算法·leetcode·macos·动态规划·宽度优先
闻缺陷则喜何志丹8 分钟前
【 线性筛 调和级数】P7281 [COCI 2020/2021 #4] Vepar|普及+
c++·算法·洛谷·线性筛·调和级数
zzzsde9 分钟前
【Linux】线程概念与控制(1)线程基础与分页式存储管理
linux·运维·服务器·开发语言·算法
穿条秋裤到处跑10 分钟前
每日一道leetcode(2026.04.23):等值距离和
算法·leetcode·职场和发展
少许极端14 分钟前
算法奇妙屋(四十九)-贡献法
java·算法·leetcode·贡献法
武帝为此18 分钟前
【特征选择方法】
算法·数学建模
XS03010625 分钟前
Agent 记忆管理
大数据·人工智能·算法
探物 AI26 分钟前
【感知·算法】一文综述医学图像分割:从经典 U-Net 到 Mamba 的范式跃迁
算法
DevilSeagull27 分钟前
Rust 结构体详解:从定义到实例化的指南
开发语言·算法·安全·rust