leetcode 844 比較含退格的字串

2021-10-24 22:56:52 字數 1620 閱讀 7337

目錄

一、題目內容

二、解題思路

三、**

給定 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) 的空間複雜度解決該問題嗎?

可以通過兩個棧儲存s和t中的字母,如果遇到了#,則a或b出棧,否則繼續新增元素,直到新增完畢,即可比較。

class solution:

def backspacecompare(self, s: str, t: str) -> bool:

a =

b =

for i in range(len(s)):

if s[i] != '#':

elif s[i] == '#' and a != :

a.pop()

for i in range(len(t)):

if t[i] != '#':

elif t[i] == '#' and b != :

b.pop()

return a == b

if __name__ == '__main__':

s = "ab#c"

t = "ad#c"

s = solution()

ans = s.backspacecompare(s, t)

print(ans)

leetcode 844 比較含退格的字串

給定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...

leetcode 844 比較含退格的字串

近期一直在用python刷leetcode的題,都提交到了github上了 給定s和t兩個字串,當它們分別被輸入到空白的文字編輯器後,判斷二者是否相等,並返回結果。代表退格字元。示例 1 輸入 s ab c t ad c 輸出 true 解釋 s 和 t 都會變成 ac 示例 2 輸入 s ab t...

LeetCode 844 比較含退格的字串

輸入 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 輸出 fa...