leecode如何解决翻转字符串里的单词问题
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,小编给大家分享一下leecode如何解决翻转字符串里的单词问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!给定一个字符串
千家信息网最后更新 2025年12月03日leecode如何解决翻转字符串里的单词问题
小编给大家分享一下leecode如何解决翻转字符串里的单词问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
给定一个字符串,逐个翻转字符串中的每个单词。
示例 1:输入: "the sky is blue"输出: "blue is sky the"
示例 2:输入: " hello world! "输出: "world! hello"解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。
示例 3:输入: "a good example"输出: "example good a"解释: 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。
说明:
无空格字符构成一个单词。
输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。
如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。
进阶:
请选用 C 语言的用户尝试使用 O(1) 额外空间复杂度的原地解法。
考点:字符串的相关操作
思路:
转换为字符串列表,反转拼接
双指针,遇到空格保存到列表中
class Solution:def reverseWords(self, s: str) -> str:if s is None or len(s) < 1:return s'''new_s = s.strip(' ')new_s = new_s.split()new_s.reverse()return ' '.join(new_s)'''# 双指针res = []s = s.strip()i = j = len(s) - 1res = []while i >= 0:while i >= 0 and s[i] != ' ':i -= 1 # 搜索首个空格res.append(s[i + 1: j + 1]) # 添加单词while s[i] == ' ':i -= 1 # 跳过单词间空格j = i # j 指向下个单词的尾字符return ' '.join(res) # 拼接并返回
以上是"leecode如何解决翻转字符串里的单词问题"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
字符
单词
空格
字符串
输入
示例
篇文章
输出
问题
两个
内容
指针
解释
复杂
不怎么
原地
复杂度
大部分
思路
指向
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
ea数据库生成实例
鸿蒙软件开发环境下载
个人服务器安全软件
华为手机出现服务器出错
问净网络技术
旁路设计 网络安全
数据库表分号
结婚仪式视频软件开发
阿里 水冷服务器
数据库设计一对多使用中间表
深圳正规软件开发费用是多少
链接远程服务器安全登录
背单词软件开发的意义
软件开发有没有必须学
方舟无法读取服务器
内网穿透是服务器转发吗
河北常规软件开发差异
卫健局网络安全法
数据库汇总方便管理
未来之役服务器选哪个好
服务器驱动蓝屏
颜体网络安全书法作品
通信与网络技术
地平线五服务器错误
党的十九大关于网络安全的论文
数据库执行报错值过多
关于网络安全的名言警句简单
派派拓客系统软件开发
雷石柏云服务器编辑编口选择
朝阳天兴网络技术