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();                           // 转化为字符串并返回
    }
}
相关推荐
wadesir4 分钟前
Rust中的条件变量详解(使用Condvar的wait方法实现线程同步)
开发语言·算法·rust
我是Superman丶5 分钟前
《Spring WebFlux 实战:基于 SSE 实现多类型事件流(支持聊天消息、元数据与控制指令混合传输)》
java
廋到被风吹走18 分钟前
【Spring】常用注解分类整理
java·后端·spring
是一个Bug22 分钟前
Java基础20道经典面试题(二)
java·开发语言
yugi98783822 分钟前
基于MATLAB实现协同过滤电影推荐系统
算法·matlab
TimberWill23 分钟前
哈希-02-最长连续序列
算法·leetcode·排序算法
Z_Easen25 分钟前
Spring 之元编程
java·开发语言
Morwit40 分钟前
【力扣hot100】64. 最小路径和
c++·算法·leetcode
leoufung40 分钟前
LeetCode 373. Find K Pairs with Smallest Sums:从暴力到堆优化的完整思路与踩坑
java·算法·leetcode
阿蒙Amon41 分钟前
C#每日面试题-委托和事件的区别
java·开发语言·c#