LCR 181. 字符串中的单词反转

解题思路:

java 复制代码
class Solution {
    public String reverseMessage(String message) {
        message = message.trim();                               // 删除首尾空格
        int j = message.length() - 1, i = j;
        StringBuilder res = new StringBuilder();
        while (i >= 0) {
            while (i >= 0 && message.charAt(i) != ' ') i--;     // 搜索首个空格
            res.append(message.substring(i + 1, j + 1) + " ");  // 添加单词
            while (i >= 0 && message.charAt(i) == ' ') i--;     // 跳过单词间空格
            j = i;                                              // j 指向下个单词的尾字符
        }
        return res.toString().trim();                           // 转化为字符串并返回
    }
}
相关推荐
程序猿小蒜34 分钟前
基于springboot的车辆管理系统设计与实现
java·数据库·spring boot·后端·spring·oracle
WBluuue1 小时前
数据结构与算法:摩尔投票算法
c++·算法·leetcode
zl9798991 小时前
SpringBoot-Web开发之Web原生组件注入
java·spring boot·spring
2401_858286111 小时前
OS36.【Linux】简单理解EXT2文件系统(2)
linux·运维·服务器·数据结构·文件系统·ext2
小羊学伽瓦1 小时前
【Java数据结构】——常见力扣题综合
java·数据结构·leetcode·1024程序员节
I'm Jie2 小时前
(五)Gradle 依赖传递与冲突处理
java·spring boot·spring·kotlin·gradle·maven
我命由我123452 小时前
Spring Cloud - Spring Cloud 声明式接口调用(Fiegn 声明式接口调用概述、Fiegn 使用)
java·后端·spring·spring cloud·微服务·架构·java-ee
_extraordinary_2 小时前
Java Spring事务,事务的传播机制
java·开发语言·spring
摸鱼的老谭2 小时前
Java学习之旅第三季-17:Lambda表达式
java·lambda表达式·1024程序员节
文火冰糖的硅基工坊2 小时前
[人工智能-大模型-66]:模型层技术 - 两种编程范式:数学函数式编程与逻辑推理式编程,构建起截然不同的智能系统。
人工智能·神经网络·算法·1024程序员节