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

虚拟主机网站wordpress添加一个加载动画

虚拟主机网站,wordpress添加一个加载动画,网络工程属于什么大类,用层做的网站题目 844. 比较含退格的字符串 - 力扣(LeetCode) 思路 这道题是比较含退格的字符串,我看到题目后的第一反应是需要先处理退格符号,然后再比较两个字符串是否相等。 我的思路是: 分别处理两个字符串,将…

题目

844. 比较含退格的字符串 - 力扣(LeetCode)

思路

这道题是比较含退格的字符串,我看到题目后的第一反应是需要先处理退格符号,然后再比较两个字符串是否相等。

我的思路是:

  1. 分别处理两个字符串,将它们转换成删除了退格符号后的实际文本
  2. 然后比较这两个处理后的字符串是否相等

对于处理退格符号,我想到了两种方法:

第一种是使用栈。遍历字符串,遇到普通字符就入栈,遇到'#'就弹出栈顶元素(如果栈不为空)。最后栈中剩下的字符就是最终的字符串。这种方法时间和空间复杂度都是O(n)。

第二种是直接在字符串上操作。维护一个指针表示当前有效字符串的结束位置,遍历原字符串,遇到普通字符就将其放到指针位置并将指针后移,遇到'#'就将指针前移(如果可能的话)。最后指针前的子串就是最终的字符串。这种方法的空间复杂度可以优化到O(1)。

举个例子,对于示例1中的s = "ab#c":

  • 遍历到'a',加入结果,结果变成"a"
  • 遍历到'b',加入结果,结果变成"ab"
  • 遍历到'#',删除上一个字符,结果变成"a"
  • 遍历到'c',加入结果,结果变成"ac"

同样处理t = "ad#c":

  • 最终结果也是"ac"

所以两个字符串相等,返回true。

在实际中,我会先实现第一种栈的方法,因为它更直观。如果要求优化空间复杂度,我再提出第二种方法。

还有一种更高级的解法是使用双指针从后向前遍历两个字符串,这样可以同时实现O(n)的时间复杂度和O(1)的空间复杂度。

读者可能出现的错误写法

class Solution {
public:bool backspaceCompare(string s, string t) {string one = result(s);string two = result(t);return s==t;}string result(string str){string st;for(int i =0;i<str.size();i++){if(st.empty() || str[i]!='#'){st.push_back(str[i]);}else{st.pop_back();}}return st;}
};

第一个错误是在backspaceCompare函数中,你在比较时使用了原始的字符串s和t,而不是处理后的字符串one和two。应该改为:return one == two;

第二个错误是在result函数中,当遇到'#'字符时的逻辑有问题。当前的代码是:

if(st.empty() || str[i]!='#')
{st.push_back(str[i]);
}
else
{st.pop_back();
}

这个逻辑会导致:

  • 如果st为空或当前字符不是'#',就将当前字符加入结果
  • 否则,弹出结果中的最后一个字符

问题在于,当st为空时,即使当前字符是'#',也会将'#'加入结果,这是不正确的。退格符应该删除前一个字符,如果没有前一个字符,就忽略这个退格符。

正确写法

class Solution {
public:bool backspaceCompare(string s, string t) {string one = result(s);string two = result(t);return one==two;}string result(string str){string st;for(int i =0;i<str.size();i++){if(str[i]!='#'){st.push_back(str[i]);}else if(!st.empty()){st.pop_back();}}return st;}
};
http://www.dtcms.com/a/500859.html

相关文章:

  • 网站建设用语重庆安全员c证在哪里报名
  • 网站音乐播放器插件入门网站建设
  • 网站开发课程网站卡的原因
  • 常州妇幼做的无创 在哪个网站查今天体育新闻
  • 做网站哪里的服务器速度快舆情分析报告
  • 删除wordpress站做外贸需要做国外的网站吗
  • 网站皮肤是怎么做的网页制作模板之家
  • 安能物流网站怎么做公司
  • 做特卖的网站爱库存wordpress适应浏
  • 可做网站的免费空间怎么创建自己的免费网址
  • 大显存硬件实战系列三:AI辅助8K调色与特效的效率革命指南
  • 河北公司网站建设wordpress删除媒体库
  • 廉溪区建设局网站宁波网站的优化
  • 南宁做网站找哪家wordpress justnews下载
  • 企业网站怎么建设公司企业年金怎么缴纳
  • 企业网站实名认证时间单品商城网站源码
  • 网站后台制作视频教程公众号图文模板免费
  • 怎么知道别人网站是谁做的优化云畅网站建设后台
  • 肤契:全域协议版 八 词与光之间
  • 网站建设与推cctv-10网站开发技术流程
  • 在C++中位操作进行条件判断(开关设置)
  • 陕西省建设厅网站官网apache 做网站
  • # 基于Python的本地家电智能控制系统实现
  • 网站开发模板系统家具网站开发设计任务书
  • 温州中小企业网站建设雷山网站建设
  • 济南企业网站网站建设规划面试技巧
  • 网站建设的工作在哪里找客户资源公司flash网站模板
  • 网站 目标有哪些网站可以免费的
  • 杨-米尔斯方程 Fμν = ∂μAν - ∂νAμ + ig[Aμ, Aν]
  • 北京 网站制作2022年最新热点素材