当前位置: 首页 > news >正文

力扣-哈希表-844 比较含退格的字符串

思路和时间复杂度

  1. 思路:利用栈完成出栈操作
  2. 时间复杂度: O(n)      

代码

class Solution {
public:
    bool backspaceCompare(string s, string t) {
        stack<char> ss;
        stack<char> tt;

        for(int i = 0; i < s.size(); i++){
            if(s[i] != '#'){
                ss.push(s[i]);
            }else{
                if(!ss.empty()){
                    ss.pop();
                }
            }
        }

        for(int i = 0; i < t.size(); i++){
            if(t[i] != '#'){
                tt.push(t[i]);
            }else{
                if(!tt.empty()){
                    tt.pop();
                }
            }
        }

        if(ss.size() != tt.size()) return false;
        while(!ss.empty() && !tt.empty()){
            if(ss.top() != tt.top()){
                return false;
            }
            ss.pop();
            tt.pop();
        }

        return true;
    }
};

相关文章:

  • 理解C语言中的extern关键字
  • 【机器人-基础知识】欧拉角、旋转矩阵和四元数
  • python爬虫碰到IP被封的情况,如何解决?
  • 【Rust并发编程深度解析:内存模型与异步运行时实现原理】
  • JavaScript API与WebRTC技术解析:EasyRTC嵌入式视频通话SDK的实现
  • vue3:密码加密解密实现
  • pdf合并工具
  • OpenGL(4)着色器
  • LearnOpenGL-笔记-其三
  • 文件跨国传输如何加速?UDP改造机制解析
  • vscode出现:No module named ‘requests‘ 问题的解决方法
  • 【AI】单台10卡4090 openEuler服务器离线部署kasm workspace 提供简单的GPU云服务 虚拟化桌面
  • 每天一篇《目标检测》文献(一)
  • Android Compose remember 详解
  • docker jar镜像打包
  • windows平台的ffmpeg编译使用
  • 国产化信创操作系统的电脑,能运行windows程序吗
  • 大三下找C++开发实习的感受分享
  • tomcat应用的作用以及安装,以及tomcat软件的开机自启动。
  • c语言笔记 堆内存管理
  • “铁血防守”制造8年最快丢球,恐惧中的阿森纳什么也做不了
  • 中青旅:第一季度营业收入约20.54亿元,乌镇景区接待游客数量同比减少6.7%
  • 马上评丨又见酒店坐地起价,“老毛病”不能惯着
  • AI观察|算力饥渴与泡沫
  • 深圳宝安区一宗涉宅用地中止出让,起始总价86.27亿元
  • 纪录电影《中国有戏:天幕计划》启动,有望太空播放