9/15 每日一題 (遇到#時刪除前一個字元, 檢查兩組字串是否相等)
Given two strings s and t, return true if they are equal when both are typed into empty text editors. '#' means a backspace character.
Note that after backspacing an empty text, the text will continue empty.
Example 1:
Input: s = "ab#c", t = "ad#c" Output: true Explanation: Both s and t become "ac".
Example 2:
Input: s = "ab##", t = "c#d#" Output: true Explanation: Both s and t become "".
Example 3:
Input: s = "a#c", t = "b" Output: false Explanation: s becomes "c" while t becomes "b".
Constraints:
1 <= s.length, t.length <= 200sandtonly contain lowercase letters and'#'characters.
Follow up: Can you solve it in O(n) time and O(1) space?
class Solution:
def backspaceCompare(self, s: str, t: str) -> bool:
stack=[]
stack2=[]
for i in s:
if i !='#':
stack.append(i)
else:
if len(stack)>0:
stack.pop()
for i in t:
if i !='#':
stack2.append(i)
else:
if len(stack2)>0:
stack2.pop()
print(f'stack={stack}')
print(f'stack2={stack2}')
return stack == stack2
標籤: leetcode

0 個意見:
張貼留言
訂閱 張貼留言 [Atom]
<< 首頁