题目链接:
分析:属于最简单的一档模拟题,稍微思考一下就可以通过。
算法思路:首先设置一个字符串res保留最终的结果,本题可以按照题目要求,先逐个从word1、word2两个字符串中依次提取,在较短的一个提取结束后(代码中用min(word1.size(),word2.size())表示),将较长的字符串的剩余部分直接拼接到res之后,就可以完成。
下面是参考代码:
class Solution {
public:
string mergeAlternately(string word1, string word2) {
int i=0; //作为一个计数器,标记位置
string res=""; //返回的结果字符串
for(i;i<min(word1.size(),word2.size());++i){ //模拟交替相加的过程
res+=word1[i];
res+=word2[i];
}
if(i==word1.size()) //判断哪个字符串较长,将其加到res的后面
res+=word2.substr(i,word2.size()-i);
else
res+=word1.substr(i,word1.size()-i);
return res;
}
};