【LeetCode 0151】【字符串】反转字符串中的单词

题目

https://leetcode.com/problems/reverse-words-in-a-string/

题解
  • 正则+高阶函数
javascript 复制代码
var reverseWords = function(s) {
   return  s.split(/[\s]+/).filter(e=>e!="").reverse().join(" ")  
};
  • 迭代+双指针(时间O(n) 空间O(n) ):从右边往左确定每一个单词,放入结果
javascript 复制代码
var reverseWords = function(s) {
    let answer = [];
    // i 指向单词首字符,j指向单词尾部下一个字符或者s串尾
    for( let i = s.length-1 , j = s.length; i >= 0; i--){
        if(s[i] == ' '){ // 发现新单词的尾部
            j = i
        }else if(i==0 || s[i-1] == ' '){// 发现新单词的首部
            answer.push(s.substring(i,j)) // 收集单词
        }
    }
    return answer.join(' ')// 使用单一空格连接成结果返回
};
相关推荐
凌波粒7 小时前
LeetCode--46.全排列(回溯算法)
数据结构·算法·leetcode
翼龙云_cloud7 小时前
阿里云国际代理商:如何使用RDS MySQL 构建网站数据库?
数据库·mysql·阿里云
程序猿乐锅7 小时前
【 苍穹外卖day03 | 菜品管理 】
java·开发语言·数据库·mysql
sheeta19988 小时前
LeetCode 每日一题笔记 日期:2026.06.16 题目:3612. 字符串特殊符号处理
笔记·算法·leetcode
aFakeProgramer8 小时前
S-CORE Docker 环境
linux
error:(8 小时前
Ubuntu 22.04 GNOME远程桌面配置问题排查与解决全流程
linux·运维·ubuntu
hughnz8 小时前
贝克休斯WellLink Assurance vs 帕特森-UTI REX:钻井报警系统的两条技术路线之争
大数据·数据库·人工智能
CoderYanger8 小时前
A.每日一题:2095. 删除链表的中间节点
java·数据结构·程序人生·leetcode·链表·面试·职场和发展
青山木8 小时前
Hot 100 --- 矩阵置零
线性代数·算法·leetcode·矩阵·哈希算法
闪电悠米8 小时前
黑马点评-Redis ZSet-实现关注 Feed 流
服务器·网络·数据库·redis·缓存·junit·lua