网站验证码怎么做,政务服务 网站 建设方案,wordpress外贸模版,出格做网站怎么样题目以及链接#xff1a;
1768. 交替合并字符串 给你两个字符串 word1 和 word2 。请你从 word1 开始#xff0c;通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长#xff0c;就将多出来的字母追加到合并后字符串的末尾。 返回 合并后的字符串 。 示例 1
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创建之后就不能更改。自然就想到常用的另外两种StringBufferStringBulider。这里博主使用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 lenij 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();}
}