力扣 字符串解码

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

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

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;}};
相关推荐
智算菩萨12 小时前
上下文学习的贝叶斯推断视角:隐式梯度下降还是隐式贝叶斯?
人工智能·算法
项管芝士12 小时前
PMP项目管理:掌握减法与乘法艺术 提升项目效率
职场和发展
TracyCoder12312 小时前
LeetCode Hot100(52/100)——394. 字符串解码
算法·leetcode·职场和发展
thginWalker12 小时前
leetcode有空可以挑战的题目
leetcode
52Hz11813 小时前
力扣207.课程表、208.实现Trie(前缀树)
python·leetcode
Σίσυφος190013 小时前
四元数 欧拉角 旋转矩阵
人工智能·算法·矩阵
shentuyu木木木(森)13 小时前
单调队列 & 单调栈
数据结构·c++·算法·单调栈·单调队列
ghie909013 小时前
基于MATLAB的指纹定位算法仿真实现
数据库·算法·matlab
熬了夜的程序员13 小时前
【LeetCode】119. 杨辉三角 II
算法·leetcode·职场和发展
sali-tec13 小时前
C# 基于OpenCv的视觉工作流-章24-SURF特征点
图像处理·人工智能·opencv·算法·计算机视觉