python字符串单词逆序输出、多空格_LeetCode 557. 反转字符串中的单词 III | Python

这篇博客介绍了如何解决LeetCode 557题——反转字符串中的单词 III,提供了两种Python解决方案,一种使用split()函数,另一种不使用分割直接遍历字符串,同时保留单词的初始顺序和空格。
摘要由CSDN通过智能技术生成

557. 反转字符串中的单词 III

题目

给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。

示例:

输入:"Let's take LeetCode contest"

输出:"s'teL ekat edoCteeL tsetnoc"

提示:

在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。

解题思路

使用辅助列表

先看题目,给定字符串,其中字符串含有空格,要求反转被空格隔开的单词,但是保留空格和单词的初始顺序。

再看后面的提示,字符串每个单词只有单个空格分隔,字符串不会有其他额外的空格。

因为只有单个空格分隔,那么这里,我们可以考虑将给定的字符串按照空格进行分割,这里使用字符串的 split() 函数,具体的做法:

按照空格对字符串进行分割;

定义辅助列表,然后将分割部分的单词进行翻转,按照顺序添加到辅助列表中;

最后将反转之后单词进行拼接,添加空格间隔。

具体代码实现如下:

class Solution:

def reverseWords(self, s: str) -> str:

# 按照空格进行切割

s = s.split(' ')

# 然后将切割后的每部分都进行翻转

ans = []

for pa

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值