算法---交替合并字符串

题目

给你两个字符串 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 由小写英文字母组成

解决思路

解决方法

kotlin 复制代码
    fun mergeAlternately(word1: String, word2: String): String {
        val stringBuilder = StringBuilder()
        val largeLength = word1.length.coerceAtLeast(word2.length)
        for (i in 0 until largeLength) {
            if (i < word1.length){
                stringBuilder.append(word1[i])
            }
            if (i < word2.length){
                stringBuilder.append(word2[i])
            }
        }

        return stringBuilder.toString()
    }

总结

太简单了吧,其实可以使用数组去做

不管难易,贵在坚持

加油

相关推荐
C++ 老炮儿的技术栈3 分钟前
C/C++ 中 inline(内联函数)和宏定义(#define)的区别
开发语言·c++·git·算法·机器人·visual studio
大柏怎么被偷了32 分钟前
【C++】哈希的应用
算法·哈希算法
血小板要健康37 分钟前
如何计算时间复杂度(上)
java·数据结构·算法
古城小栈43 分钟前
Rust Vec与HashMap全功能解析:定义、使用与进阶技巧
算法·rust
wWYy.1 小时前
详解哈希表
数据结构·算法·散列表
无望__wsk1 小时前
Python第一次作业
开发语言·python·算法
Lips6111 小时前
2026.1.25力扣刷题笔记
笔记·算法·leetcode
源代码•宸2 小时前
Leetcode—746. 使用最小花费爬楼梯【简单】
后端·算法·leetcode·职场和发展·golang·记忆化搜索·动规
南 阳2 小时前
Python从入门到精通day16
开发语言·python·算法
沉默-_-2 小时前
力扣hot100-子串(C++)
c++·学习·算法·leetcode·子串