【每日一题】力扣1768. 交替合并字符串
题目以及链接:
给你两个字符串
word1
和word2
。请你从word1
开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。返回 合并后的字符串 。
示例 1:
输入:word1 = "abc", word2 = "pqr" 输出:"apbqcr" 解释:字符串合并情况如下所示: word1: a b c word2: p q r 合并后: a p b q c r
拿到题目之后首先分析,两个字符串,要进行合并,并且要交替添加。既然需要用到字符的添加和删除之类的,那么String肯定不行。因为String创建之后就不能更改。自然就想到常用的另外两种StringBuffer,StringBulider。这里博主使用StringBuffer。使用最常见的模拟方法,将word1和word2分别转成StringBuffer,从而对其进行处理,用ans来存储处理完的结果,之后就是两个串交替进行添加,剩下的串再一次性添加。返回时由于要使用String类型,可以使用toString()方法来返回。即可通过
代码如下:
class Solution {
public String mergeAlternately(String word1, String word2) {
StringBuffer sb1 = new StringBuffer(word1);
StringBuffer sb2 = new StringBuffer(word2);
StringBuffer ans = new StringBuffer();
int i = 0,j = 0 ;
int leni = sb1.length(),lenj = sb2.length();
while(i < leni&&j < lenj ) {
ans.append(sb1.charAt(i));
ans.append(sb2.charAt(j));
++i;
++j;
}
while(i < leni) ans.append(sb1.charAt(i++));
while(j < lenj) ans.append(sb2.charAt(j++));
return ans.toString();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了