哈囉大家好,我是Justin Chang,這次要來挑戰用Python寫LeetCode 75的題目。使用Python的原因是我對於Python比較熟悉,寫的速度會比較快一點。不過有時候我可能會補充C/C++/C#的寫法,偶爾無聊也會練一下這幾種語言。
LeetCode 75主要是LeetCode整理出75題Coding Interview比較常考的題目,包含了以下幾個主題:
那麼第一篇我就選擇了LeetCode 75的第一個主題Array/String的第一個題目Merge Strings Alternately。
給定兩個字串word1
、word2
,把兩個字串交叉混合,從word1
開始。如果一個字串比較長的話,就把剩餘的字串加到最後合成的字串後面。最後回傳已合成的字串。
idx
,代表目前的位置。idx
比word1
或是word2
長度小的話,就代表還未完成合成字串,還要繼續合成。word1
的第idx
個字元到ans
,再加入word2
的第idx
個字元,但是在加入前都要先確認說是否該字串還有字元能加,所以要先判斷字串長度有沒有大於idx
。class Solution:
def mergeAlternately(self, word1: str, word2: str) -> str:
ans = ""
idx = 0
while idx < len(word1) or idx < len(word2):
if idx < len(word1):
ans += word1[idx]
if idx < len(word2):
ans += word2[idx]
idx += 1
return ans
好了,今天的分享就到這邊結束,如果之後有想要我講什麼題目的話,可以在下方留言喔! 因為LeetCode 75總共有75題,但是這個鐵人挑戰只有30天而已,所以會有一半的題目沒講到。希望今日的分享對於再練習LeetCode 75的朋友有一點點的幫助。