交替合并字符串

题目:

给你两个字符串 word1 和 word2 。请你从 word1 开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/merge-strings-alternately

示例 1:

输入:word1 = "abc", word2 = "pqr"
输出:"apbqcr"
解释:字符串合并情况如下所示:
word1:  a   b   c
word2:    p   q   r
合并后:  a p b q c r

示例 2:

输入:word1 = "ab", word2 = "pqrs"
输出:"apbqrs"
解释:注意,word2 比 word1 长,"rs" 需要追加到合并后字符串的末尾。
word1:  a   b
word2:    p   q   r   s
合并后:  a p b q   r   s

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/merge-strings-alternately

解题思路:

先交替添加到列表,然后比较word1和word2的长度,如果word1的长度比word2的长,则交替完后再添加word1后面的字符;如果word2的长度比word1的长,则交替完后再添加word2后面的字符。

class Solution(object):
    def mergeAlternately(self, word1, word2):
        """
        :type word1: str
        :type word2: str
        :rtype: str
        """
        a,b=0,0
        n=len(word1)
        m=len(word2)
        c=[]
        while a<n and b<m:
            c.append(word1[a])
            c.append(word2[b])
            a+=1
            b+=1
        if n<m:
            c.append(word2[b:])
        elif n>m:
             c.append(word1[a:])
        return ''.join(c)

猜你喜欢

转载自blog.csdn.net/Tinyfacture/article/details/131958684