文章目录
- 1. 题目
- 2. 解题
1. 题目
给你两个字符串 word1 和 word2 。
请你从 word1
开始,通过交替添加字母来合并字符串。
如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。
返回 合并后的字符串 。
示例 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示例 3:
输入:word1 = "abcd", word2 = "pq"
输出:"apbqcd"
解释:注意,word1 比 word2 长,"cd" 需要追加到合并后字符串的末尾。
word1: a b c d
word2: p q
合并后: a p b q c d提示:
1 <= word1.length, word2.length <= 100
word1 和 word2 由小写英文字母组成
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/merge-strings-alternately
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
- 双指针模拟
class Solution {
public:string mergeAlternately(string word1, string word2) {int n1 = word1.size(), n2 = word2.size(), i = 0, j = 0;string ans;ans.reserve(n1+n2);while(i < n1 || j < n2){if(i < n1)ans.push_back(word1[i++]);if(j < n2)ans.push_back(word2[j++]);}return ans;}
};
0 ms 6.3 MB C++
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!