每日一道leetcode(python)844. 比较含退格的字符串

2021-09-05

给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果。 # 代表退格字符。注意:如果对空文本输入退格字符,文本继续为空。示例 1:输入:S = "ab#c", T = "ad#c"
输出:true
解释:S 和 T 都会变成 “ac”。
示例 2:输入:S = "ab##", T = "c#d#"
输出:true
解释:S 和 T 都会变成 “”。
示例 3:输入:S = "a##c", T = "#a#c"
输出:true
解释:S 和 T 都会变成 “c”。
示例 4:输入:S = "a#c", T = "b"
输出:false
解释:S 会变成 “c”,但 T 仍然是 “b”。提示:1 <= S.length <= 200
1 <= T.length <= 200
S 和 T 只含有小写字母以及字符 '#'。进阶:你可以用 O(N) 的时间复杂度和 O(1) 的空间复杂度解决该问题吗?来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/backspace-string-compare
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路
我们可以使用栈结构处理退格的问题,按照顺序将字符逐个入栈,如果遇到“#”则将栈顶元素弹出,最后将栈中留下来的元素按照顺序连接成字符串即可。

class Solution:def backspaceCompare(self, S: str, T: str) -> bool:def text_input(text):# 栈stack = []# 遍历字符串for ch in text:# 普通字符入栈if ch != "#":stack.append(ch)# "#" 字符且栈非空时,弹出elif stack:stack.pop()          return ''.join(stack)# 判断两者是否相同return text_input(S) == text_input(T)

每日一道leetcode(python)844. 比较含退格的字符串相关推荐

  1. leetcode系列-844.比较含退格的字符串

    leetcode系列–第844题.比较含退格的字符串 给定 s 和 t 两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回 true .# 代表退格字符.注意:如果对空文本输入退格字 ...

  2. leetcode笔记 844比较含退格的字符串 python

    给定 s 和 t 两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回 true .# 代表退格字符. 示例1: 输入:s = "ab#c", t = " ...

  3. 日拱一卒——LeetCode 844.比较含退格的字符串

    大家好呀,今天为大家带来的LeetCode的题目是LeetCode 844.比较含退格的字符串.算是一道比较基础的题目. 题目 分析 这道题目相对简单,主要就是将时间复杂度和空间复杂度降低下来. 解法 ...

  4. byte数组转字符串_leetcode刷题844比较含退格的字符串(带代码解析,带知识点回顾)...

    844. 比较含退格的字符串 难度:简单 第一:简单浏览一下题目 给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果.# 代表退格字符. 注意:如果对空文 ...

  5. 减去字符串_leetcode刷题844比较含退格的字符串(带代码解析,带知识点回顾)

    844. 比较含退格的字符串 难度:简单 第一:简单浏览一下题目 给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果.# 代表退格字符. 注意:如果对空文 ...

  6. 844. 比较含退格的字符串

    文章目录 844. 比较含退格的字符串 思路--双指针 844. 比较含退格的字符串 844. 比较含退格的字符串 思路–双指针 准备两个指针 endS, endT 分别指向 S,T 的末位字符,再准 ...

  7. 844. 比较含退格的字符串(双指针)

    844. 比较含退格的字符串 示例 1: 输入:s = "ab#c", t = "ad#c" 输出:true 解释:s 和 t 都会变成 "ac&qu ...

  8. leetcode 844. 比较含退格的字符串

    给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果. # 代表退格字符. 注意:如果对空文本输入退格字符,文本继续为空. 示例 1: 输入:S = &qu ...

  9. 【Leetcode-算法】844. 比较含退格的字符串(C++)

    给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果. # 代表退格字符.注意:如果对空文本输入退格字符,文本继续为空. 思路: 两个思路. 第一种思路是用 ...

最新文章

  1. xsl-mode属性用法
  2. python dataframe groupby_【Python数据分析基础】入坑必备的数据预处理操作
  3. 如何用c 语言编写阶乘程序,求10000的阶乘(c语言代码实现)
  4. android listview headerview 分割线,【我的Android进阶之旅】如何去除ListView中Header View、Footer View中的分割线...
  5. Gartner最新发布:影响2022年基础设施和运营重大趋势
  6. php中socket的使用
  7. -webkit-min-device-pixel-ratio的常见值对照
  8. 去360总部参加网络信息安全会议经历
  9. Mac控制中心使用方法
  10. python智慧树判断题_智慧树_大数据分析的python基础_判断题答案
  11. 计算机知识课程简单课件,计算机基础知识实用课件.ppt
  12. C语言程序设计基础练习
  13. 17个惊艳的数据可视化案例,让你更懂数据可视化!
  14. [arduino]红外接收测试工装
  15. 21届校招中获得12家公司offer的一些经验(包括6家银行信息科技岗offer)
  16. 0002数学建模的重要意义
  17. Android中的Glide
  18. 企业CDN缓存系统varnish——搭建一个最基本的varnish系统
  19. msf拿到shell显示乱码解决方法以及chcp各种编码的补充
  20. GeoHash实现代码

热门文章

  1. 犀牛书第七版学习笔记:数据类型与结构-数字
  2. 跨域请求(使用jsonp实现跨域请求)百度地图api证逆地址解析获取周边信息(pois)
  3. matlab 矩阵3d显示,Matlab 3D视图矩阵
  4. java io密集型任务_Java 多线程(一):CPU密集型、IO密集型
  5. Linux中的文件IO以及JDK中的NIO模型简介
  6. 中电十所提前批面经(通信算法岗)
  7. 多线程对共享资源的访问
  8. Linux横向之CSK靶机攻防
  9. 用微博帐号登录出错了! 对第三方应用进行授权时出现错误,请您联系第三方应用的开发者: 十五发芽或者稍后再试。 错误码:21322 重定向地址不匹配
  10. 符号分开的一列数据列转行