【LeetCode算法】1768. 交替合并字符串

提示:此文章仅作为本人记录日常学习使用,若有存在错误或者不严谨得地方欢迎指正。

一、题目

给你两个字符串 word1 和 word2 。请你从 word1 开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾,返回合并后的字符串 。
在这里插入图片描述

二、思路

分别使用两个指针word1_position和word2_position来指向word1和word2字符串的首个字符,然后通过StringBuilder组合成最终的结果。当word1_position指针没有超出word1的范围时,就通过charAt()获取word1的首个字符,然后将其添加至StringBuilder对象answer中,然后让word1_position指针移动到下一位。对word2执行相同的操作即可得到最终的答案,然后将StringBuilder类型的answer通过toString()方法转换成字符串类型返回即可。

三、解决方案

语言:Java
执行耗时:1 ms
内存消耗:40.8 MB

class Solution {
    public String mergeAlternately(String word1, String word2) {
        int word1_length = word1.length();
        int word2_length = word2.length();
        int word1_position = 0;
        int word2_position = 0;
        StringBuilder answer = new StringBuilder();
		
		// 当word1和word2的指针没有超出word1和word2的范围时
        while (word1_position < word1_length || word2_position < word2_length) {
        	// 获取word1的首个字符然后拼接到answer中 让word1的指针移动到下一个字符
            if (word1_position < word1_length) {
                char ch = word1.charAt(word1_position);
                answer.append(ch);
                word1_position++;
            }
            // 获取word2的首个字符然后拼接到answer中 让word2的指针移动到下一个字符
            if (word2_position < word2_length) {
                char ch = word2.charAt(word2_position);
                answer.append(ch);
                word2_position++;
            }
        }
        // 将StringBuilder转型为String类型返回
        return answer.toString();
    }
}

相关推荐

  1. LeetCode 1768. 交替合并字符串

    2024-05-13 03:26:05       17 阅读
  2. 【数据结构和算法交替合并字符串

    2024-05-13 03:26:05       39 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-13 03:26:05       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-13 03:26:05       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-13 03:26:05       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-13 03:26:05       18 阅读

热门阅读

  1. Redis——入门简介

    2024-05-13 03:26:05       10 阅读
  2. Alibaba Cloud Linux 安装mysql及注意事项

    2024-05-13 03:26:05       14 阅读
  3. [Linux深度学习笔记5.8]

    2024-05-13 03:26:05       12 阅读
  4. C++中合成的默认构造函数的访问权限

    2024-05-13 03:26:05       11 阅读
  5. 王者荣耀铭文说明

    2024-05-13 03:26:05       10 阅读
  6. Spring Boot的工作原理

    2024-05-13 03:26:05       10 阅读
  7. HTTP协议

    2024-05-13 03:26:05       12 阅读
  8. mybatis 模糊查询的几种方式

    2024-05-13 03:26:05       11 阅读
  9. Python 自动化脚本系列:第3集

    2024-05-13 03:26:05       13 阅读
  10. 拼接图片路径不显示:vue

    2024-05-13 03:26:05       10 阅读
  11. 力扣 516. 最长回文子序列 python AC

    2024-05-13 03:26:05       15 阅读
  12. 【linux软件基础知识】-cdev_alloc

    2024-05-13 03:26:05       11 阅读