leetcode151-反转字符串中的单词

leetcode 151

思路

时间复杂度:O(n) 空间复杂度:O(n)

首先将字符串转为数组,这样可以方便进行操作,然后定义一个新的数组来存放从后到前的单词,由于arr中转换以后可能会出现有些项是空格的情况,所以需要判断如果是空格那么需要跳过,我们最终的结果result需要是中间没有其他多余空格的,最终将result数组转为字符串返回

实现

js 复制代码
var reverseWords = function (s) {
    let arr = s.split(' ');
    let result = [];
    for (let i = arr.length - 1;i >= 0; i--) {
        if(arr[i].trim()){
            result.push(arr[i])
        }
    }
    return result.join(' ')
};

方法2

相关推荐
胖咕噜的稞达鸭43 分钟前
算法入门:专题攻克主题一---双指针(2)快乐数 呈最多水的容器
开发语言·数据结构·c++·算法
自信的小螺丝钉1 小时前
Leetcode 347. 前 K 个高频元素 堆 / 优先队列
算法·leetcode·优先队列·
-雷阵雨-1 小时前
数据结构——优先级队列(堆)
java·开发语言·数据结构·intellij-idea
235163 小时前
【LeetCode】46. 全排列
java·数据结构·后端·算法·leetcode·职场和发展·深度优先
未知陨落3 小时前
LeetCode:90.最长有效括号
算法·leetcode
zzywxc7873 小时前
AI工具应用全解析:智能编码、数据标注与模型训练的协同实践
人工智能·算法·信息可视化·自动化·ai编程
heyCHEEMS3 小时前
最长连续序列 Java
java·开发语言·算法
BS_Li3 小时前
用哈希表封装unordered_set和unordered_map
数据结构·c++·哈希算法·散列表
懒羊羊不懒@4 小时前
线性表的实现
c语言·数据结构
aramae4 小时前
快速排序的深入优化探讨
c语言·开发语言·c++·算法·排序算法