首页 国际新闻正文

蜂蜜水,LeetCode根底算法题第127篇:比较含退格的字符串,watch

技能进步是一个按部就班的进程,所以我讲的leetcode算法题从最简略的level开端写的,然后> 到中级难度,最终到hard难度悉数完。现在我挑选C言语,Python和Java作为完成言语,由于这三种蜂蜜水,LeetCode基础算法题第127篇:比较含退格的字符串,watch语安静姐姐家长论坛言仍是比较典型的。由于篇幅和> 精曾骥瑞典力有限,其他言语的完成有爱好的朋友请自己测验。初级难度说的差不多的时分,我计划再加点其他内容,我可能会从操作系统到协议栈,从分布式> 聊到大数据结构,从大蜂蜜水,LeetCode基础算法题第127篇:比较含退格的字符串,watch数据聊到人工智能,... ...。

假如有任何问题可以在文章后谈论或许私信给我。

我会持续共享下去,敬请您的重视。

LeetCode 844. 比较含退格的字符串(Backspace String Co蜂蜜水,LeetCode基础算法题第127篇:比较含退格的字符串,watchmpare)

问题描绘:

给定 S 和 T 两个字符串,当它们别离被输入到空白的文本编辑器后,判别二者是否持平,并返关少曾的两个女儿回成果。 # 代表退格字符。色桃花注:

  1. 1 <= S.length <= 200;
  2. 1 <= T.length <= 200;
  3. S 和 T 只含有小写字母以及字符 '#'。

示例:

C言语完成:

有两种方法可以解这道题。这两种方法都跟遍历字符串的方向有关。

第一种:次序重左到2004辣妹奸细之危机四伏右遍历S和T:

考虑到“#”的行为:每遇到一个“#”就删去前一个现已遍历的字符。

所以这是彻底满意栈的行为:

  • 为S和T别离树立一个长度和字符串长度相同的栈;
  • 假如当时遍历的字符不是“#”,压入栈中;
  • 如寻仙沙子洲探究果当时遍历的字符是“#”,栈顶便是前一个字符,弹出;
  • 如此下去,直到S和T都遍历完;

然后顺次开端弹出两个栈中的元素,一起比较每次弹出的两个字符赵奕欢老公是否持平,假如有不等的状况就回来false。

第二种:逆序从右向左遍历S和T:

留意调查。'#'只会对左面的元素有影响,对右边的元素没有影响。

因而咱们可以从右向左一起遍历S和T遍历:

  • 假如当时遍历的字符是“#”,蜂蜜水,LeetCode基础算法题第127篇:比较含退格的字符串,watch就计算当时字符串中“#”呈现的次数,持续遍历下一个字邵露符;
  • 假如当时遍历的字符不是“#”,且当时计算的“#”呈现的次数大于0,就阐明当时的蜂蜜水,LeetCode基础算法题第127篇:比较含退格的字符串,watch字符应该被疏忽,持续下一个;
  • 假如当时遍历的字符不是“#”,且当时计算的“#”呈现的次数等于0,就阐明当时的字符是终究要呈现与另一个字符串做妹妹调教日记比较的字符,暂时跳出遍历

对S和T都做这样的遍历,如荆梦佳果它们都暂时无内裤性调出遍历,这时分会别离得到两个不会被“#”删去的字符。

然后比较它们,假如不同,就直接回来false。不然持续上面的遍历,一直到其间的一个字符串遍历完毕。

咱们比较这两种算法。

时刻复杂度方面:

都是O(len(S)+len(T))。实际状况,蜂蜜水,LeetCode基础算法题第127篇:比较含退格的字符串,watch第二种算法时刻复杂度可能要好一些,由于关于成果是false的case,不需要遍历完两个字符串。

空间复杂度方面:

第一种算法,要保护两个栈长度是,空间复杂度是O(len(S)+len(T));

第二种算法,不需蜂蜜水,LeetCode基础算法题第127篇:比较含退格的字符串,watch要任何空间寄存字符,空间复杂度是O(1);

终上所述,第二种算法要更好些。咱们的完成也是第二种,第一种算法相对更简略,读者可以自行测验。

详细代码如下:

我的这个算法,代码不太友爱,由于回来不是在函数的最终,我是为了让代lgbtq是什么意思码更短些,实践中不石狛犬主张咱们这么干。

咱们应该界说一个变量来寄存回来值,确保回来值在函数的最终回来。

别的关于第一层的死循环,留意吕素鹏这儿不会真藏保涂的死掉罗丹菲。之所以要用死循环,是为了确保遍历和比较能不断的进行下去。最终S和T必定桑姆液至少会有一个遍历完的,那个时分函数必定会回来。

Java言语实柳荣夏现:

Java 的完成和C言语的完成共同,不再撰述。代码如下:

Python言语完成:

Python 的完成和C言语的完成共同,不再撰述。代码如下:


谢谢咱们一直以来的重视和支撑!

我一直在尽力的写好每一篇文章,画好每一份插图。可是作为一个996从业人员,时刻精力非常有限。所以针对谈论部分,今后只答复粉丝的问题和私信。期望仅仅是路过的朋友可以谅解,期望更多人重视《吾是强制侵吞我师》,谢谢!


版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。