LeetCode 151 Reverse Words in a String 解题思路和python代码

题目:

Given an input string s, reverse the order of the words.

A word is defined as a sequence of non-space characters. The words in s will be separated by at least one space.

Return a string of the words in reverse order concatenated by a single space.

Note that s may contain leading or trailing spaces or multiple spaces between two words. The returned string should only have a single space separating the words. Do not include any extra spaces.

Example 1:

Input: s = "the sky is blue"

Output: "blue is sky the"

Example 2:

Input: s = " hello world "

Output: "world hello"

Explanation: Your reversed string should not contain leading or trailing spaces.

Example 3:

Input: s = "a good example"

Output: "example good a"

Explanation: You need to reduce multiple spaces between two words to a single space in the reversed string.

Constraints:

1 <= s.length <= 104

s contains English letters (upper-case and lower-case), digits, and spaces ' '.

There is at least one word in s.

Follow-up: If the string data type is mutable in your language, can you solve it in-place with O(1) extra space?

解题思路:

首先,去掉前后空格。

然后,利用split()将string按空格分割成一个单词list。

接着,反转单词list。

最后,将反转后的单词list用空格连接起来。

例子:
" hello world ",先去掉前后空格得到 ["hello", "world"],反转后是 ["world", "hello"],输出 "world hello"

python 复制代码
class Solution(object):
    def reverseWords(self, s):
        """
        :type s: str
        :rtype: str
        """
        words = s.strip().split()
        reverse_words = words[::-1]
        return ' '.join(reverse_words)
相关推荐
阿里嘎多哈基米几秒前
速通Hot100-Day09——二叉树
算法·leetcode·二叉树·hot100
Liu628881 分钟前
如何为开源Python项目做贡献?
jvm·数据库·python
mygugu2 分钟前
详细分析swanlab集成mmengine底层实现机制--源码分析
python·深度学习·可视化
Frostnova丶3 分钟前
LeetCode 48 & 1886.矩阵旋转与判断
算法·leetcode·矩阵
多打代码3 分钟前
2026.3.22 回文子串
算法·leetcode·职场和发展
烟花巷子11 分钟前
使用Kivy开发跨平台的移动应用
jvm·数据库·python
SPC的存折15 分钟前
Python3编程之python基础
开发语言·python
im_AMBER18 分钟前
Leetcode 144 位1的个数 | 只出现一次的数字
学习·算法·leetcode
2401_8732046520 分钟前
Python面向对象编程(OOP)终极指南
jvm·数据库·python
小刘不想改BUG27 分钟前
LeetCode 138.随机链表的复制 Java
java·leetcode·链表·hash table