LeetCode1003 檢查替換後的詞是否有效

2021-10-23 21:20:21 字數 1077 閱讀 8931

一. 題目

題目

示例

二. 方法一: 棧

解題思路

將列表中的元素依次進棧

如果棧頂的3個元素一次是"c", 「b」, 「a」, 則彈出這3個元素

當遍歷完後, 棧為空, 則返回true; 否則, 返回false

解題**

def

isvalid

(self, s:

str)

->

bool

: stack =

for ele in s:

iflen

(stack)

>=

3and stack[-1

]=="c"and stack[-2

]=="b"and stack[-3

]=="a":

stack.pop(

) stack.pop(

) stack.pop(

)if stack:

return

false

else

:return

true

分析

時間複雜度: o(n)

空間複雜度: o(n)

三. 方法二: 字串替換

解題思路

解題**

def

isvalid

(self, s:

str)

->

bool

:while

"abc"

in s:

s = s.replace(

"abc",""

)return s ==

""

分析

時間複雜度: o(n)

空間複雜度: o(1)

Leetcode 1003 檢查替換後的詞是否有效

給定有效字串 abc 對於任何有效的字串v,我們可以將v分成兩個部分x和y,使得x y x和y連線 等於v。x或y可以為空 那麼,x abc y也同樣是有效的。例如,如果s abc 則有效字串的示例是 abc aabcbc abcabc abcabcababcc 無效字串示例是 abccba ab ...

LeetCode1003 檢查替換後的詞是否有效

給定有效字串 abc 對於任何有效的字串v,我們可以將v分成兩個部分x和y,使得x y x與y連線 等於v。x或y可以為空。那麼,x abc y也同樣是有效的。例如,如果s abc 則有效字串的示例是 abc aabcbc abcabc abcabcababcc 無效字串的示例是 abccba ab...

LeetCode 1003 檢查替換後的詞是否有效

給定有效字串 abc 對於任何有效的字串 v,我們可以將 v 分成兩個部分 x 和 y,使得 x y x 與 y 連線 等於 v。x 或 y 可以為空。那麼,x abc y 也同樣是有效的。例如,如果 s abc 則有效字串的示例是 abc aabcbc abcabc abcabcababcc 無效...