题目要求:
给你两个字符串 word1
和 word2
。请你从 word1
开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。
返回 合并后的字符串 。
代码实现:
char* mergeAlternately(char* word1, char* word2) {
int n = strlen(word1);//获取word1字符串的长度
int m = strlen(word2);//获取word2字符串的长度
char* ans = malloc((n + m + 1) * sizeof(char));//为合并后的字符串分配动态内存空间
int k = 0;
for (int i = 0; i < n || i < m; i++) {
if (i < n) {
ans[k++] = word1[i];//先赋值,指针再向后移动一位
}
if (i < m) {
ans[k++] = word2[i];//先赋值,指针再向后移动一位
}
}
ans[k] = '\0';//字符串结束标志
return ans;//返回合并后的字符串
}
代码作者:灵茶山艾府
题目来源:力扣(LeetCode)
坚持编程,我一直在路上!