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

844.比较含退格的字符串

目录

  • 题目
  • 思路
  • 解法
  • 收获

题目

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

注意:如果对空文本输入退格字符,文本继续为空。

思路

如何解退格之后left-2又遇到退格的问题

解法

class Solution {
public:bool backspaceCompare(string S, string T) {int i = S.length() - 1, j = T.length() - 1;int skipS = 0, skipT = 0;while (i >= 0 || j >= 0) {while (i >= 0) {if (S[i] == '#') {skipS++, i--;} else if (skipS > 0) {skipS--, i--;} else {break;}}while (j >= 0) {if (T[j] == '#') {skipT++, j--;} else if (skipT > 0) {skipT--, j--;} else {break;}}if (i >= 0 && j >= 0) {if (S[i] != T[j]) {return false;}} else {if (i >= 0 || j >= 0) {return false;}}i--, j--;}return true;}
};作者:力扣官方题解
链接:https://leetcode.cn/problems/backspace-string-compare/solutions/451606/bi-jiao-han-tui-ge-de-zi-fu-chuan-by-leetcode-solu/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

收获

可以有while(true)或者while(i>0)然后满足条件可以break跳出循环。因为之前写了个while,但是因为会遇到多种情况,while出不来,又不能用if,因为if只会判断一次。这个while下面多条件判断的结构很好。

http://www.lryc.cn/news/530043.html

相关文章:

  • 图书管理系统 Axios 源码__编辑图书
  • LabVIEW纤维集合体微电流测试仪
  • Commander 一款命令行自定义命令依赖
  • Day24 洛谷普及2004(内涵前缀和与差分算法)
  • 遗传算法与深度学习实战(33)——WGAN详解与实现
  • gitlab云服务器配置
  • SAP SD学习笔记27 - 请求计划(开票计划)之1 - 定期请求(定期开票)
  • HTML DOM 修改 HTML 内容
  • 基于VMware的ubuntu与vscode建立ssh连接
  • Flutter Candies 一桶天下
  • maven如何不把依赖的jar打包到同一个jar?
  • HTML5 技术深度解读:本地存储与地理定位的最佳实践
  • AIGC技术中常提到的 “嵌入转换到同一个向量空间中”该如何理解
  • 【机器学习理论】朴素贝叶斯网络
  • Docker 部署 GLPI(IT 资产管理软件系统)
  • 【Vaadin flow 实战】第5讲-使用常用UI组件绘制页面元素
  • 强化学习 DAY1:什么是 RL、马尔科夫决策、贝尔曼方程
  • 理解神经网络:Brain.js 背后的核心思想
  • 【Docker】dockerfile识别当前构建的镜像平台
  • 【VM】VirtualBox安装CentOS8虚拟机
  • 【C++篇】哈希表
  • Java篇之继承
  • 边缘检测算法(candy)
  • 设计模式Python版 组合模式
  • dfs枚举问题
  • 【开源免费】基于SpringBoot+Vue.JS社区智慧养老监护管理平台(JAVA毕业设计)
  • 安全防护前置
  • 高性能消息队列Disruptor
  • kamailio中的sctp模块
  • 前端学习-事件解绑,mouseover和mouseenter的区别(二十九)