力扣844. 比较含退格的字符串

可以把字符串的每一个字符当成入栈,而当字符为#的时候,是出栈,

遍历一整个字符串就能完成一个栈的构建。

两个字符串就相当于建了两个栈

比较两个栈是否相等

如果相等那么返回true

如果不相等,那么返回false

完整代码如下:

c++ 复制代码
class Solution {
public:
    stack<char> a;
    stack<char> b;
    bool backspaceCompare(string s, string t) {
        for(int i=0;i<s.size();i++)
        {
            if(s[i]!='#')
            {
                a.push(s[i]);
            }
            else if(!a.empty())
            {
                a.pop();
            }
        }
        for(int i=0;i<t.size();i++)
        {
            if(t[i]!='#')
            {
                b.push(t[i]);
            }
            else if(!b.empty())
            {
                b.pop();
            }
        }
        //有两个栈判断两个栈是否相等
        if(a==b)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
};
相关推荐
Liu628883 小时前
C++中的工厂模式高级应用
开发语言·c++·算法
AI科技星3 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘
参.商.3 小时前
【Day41】143. 重排链表
leetcode·golang
条tiao条4 小时前
KMP 算法详解:告别暴力匹配,让字符串匹配 “永不回头”
开发语言·算法
干啥啥不行,秃头第一名4 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
zzh940774 小时前
Gemini 3.1 Pro 硬核推理优化剖析:思维织锦、动态计算与国内实测
算法
2301_807367194 小时前
C++中的解释器模式变体
开发语言·c++·算法
愣头不青5 小时前
617.合并二叉树
java·算法
MIUMIUKK5 小时前
双指针三大例题
算法
灵感__idea5 小时前
Hello 算法:复杂问题的应对策略
前端·javascript·算法