【leetcode】151. Reverse Words in a String

Reverse Words-开源 一种用于更改句子中单词顺序或单词字母或其他算法的程序。 它的主要目的是更改短语,使它们更加难以辨认,或者在您的对话或娱乐中显得更怪胎。 立即下载
解题思路:

双指针

提交代码:

class Solution {
	public String reverseWords(String s) {
		if(s==null||s.length()==0)	return s;
		String res="";
		
		int p1=s.length()-1,p2;
		while(p1>=0&&s.charAt(p1)==' ')	p1--;
		p2=p1+1;
		while(p1>=0&&s.charAt(p1)!=' ')	p1--;
		res+=s.substring(p1+1,p2);

		while(p1>=0) {
			while(p1>=0&&s.charAt(p1)==' ')	p1--;
			p2=p1+1;
			if(p2<=0)	break;
			res+=" ";
			while(p1>=0&&s.charAt(p1)!=' ')	p1--;
			res+=s.substring(p1+1,p2);
		}
		return res;
	}
}

运行结果:
在这里插入图片描述


评论区里面有个大神的写法:

class Solution {
	public String reverseWords(String s) {
		String[] tmp=s.strip().split("//s+");
		String res="";
		for(int i=tmp.length-1;i>0;i--) {
			res+=tmp[i];
			res+=" ";
		}
		return res+tmp[0];
	}
}
Ubuntu双系统开机黑屏?3分钟搞定NVIDIA显卡驱动冲突(18.04/20.04实测有效) 本文详细解决Ubuntu双系统开机黑屏问题,特别是由NVIDIA显卡驱动冲突引起的故障。提供从临时进入系统到永久安装专有驱动的完整方案,适用于Ubuntu18.04/20.04用户,帮助快速恢复系统并优化显卡性能。 阅读详情

相关推荐

自制《大侠狂想曲》修改器:内存修改、加速与一键安装全攻略

游戏修改器是玩家优化游戏体验的常用工具,其核心原理是通过内存修改技术,在游戏进程运行时动态改写数值。常见实现路径是借助Cheat Engine扫描并追踪数据地址,再通过编程语言调用系统API完成读写。这种技术能有效解决重复刷资源带来的枯燥感,特别适用于单机RPG中想快速体验多剧情线却不想重刷资源的情形。本文以《大侠狂想曲》为例,完整拆解了从CE定位金钱与好感度内存地址,到编写C#脚本实现游戏加速、一键增加铜钱与NPC好感度,再到用Inno Setup打包生成一键安装器的全过程,并总结了数值弹回、剧情不触发、

weixin_30368981的博客 1462

python 算法:Reverse words

刷到现在的感受是:不会的命令一定及时Google哈哈哈哈哈Write a reverseWords function that accepts a string a parameter, and reverses each word in the string. Any spaces in the string should be retained.Example:reverse_words("T...

qulengdai0563的博客 2791

【图形学】Loop细分算法及半边结构实现(C++)

文章目录Loop 细分算法介绍增加新顶点更新旧顶点算法实现半边结构半边结构的表示方法半边结构的构造方法创建所有顶点创建所有面及半边半边结构的使用 Loop 细分 顾名思义,网格细分是将粗糙网格精细化的过程,如下动图。Loop细分是众多网格细分算法的一种,Loop细分仅仅对三角形网格模型有效。值得注意的是,虽然叫Loop细分,但是不能理解为“循环”细分,叫这个名字是因为作者的名字是这个而已。 下面是一个粗糙的兔子模型1000个面,进行3次细分 算法介绍 Loop细分算法主要分两步进行 增加新顶点:增加

wk_119的博客 8066

reverse word反转单词 正句变反句

比如我有有一个string,“hello how are you”, 我想把它变成一个反句 “olleh woh era uoy”, 这里不是指把句子变反,而是把里面每个单词变成反向 func reverseWords(someString: String) -> String { let allWordsArray = someString.components(separated...

SwiftIOS_watsUp的博客 1052

飞腾D2000 BIOS编译避坑指南:PCIE拆分、S3电源与过温保护配置详解

本文详细解析飞腾D2000 BIOS编译中的关键配置技巧,包括PCIE拆分模式优化、S3电源管理适配及过温保护设置。通过实战案例和参数调优建议,帮助开发者规避常见陷阱,充分发挥国产高性能计算平台的硬件潜力。特别针对BIOS编译过程中的隐蔽问题提供解决方案。

weixin_33704234的博客 534

基金估值核算系统三国杀:恒生 VS 赢时胜 VS 融选!

本文对比分析了恒生电子、赢时胜和融选科技三家金融科技公司的基金估值系统。恒生电子作为行业龙头,在公募基金领域占据较大份额,其新一代估值系统6.0采用微服务架构,自动化程度高;赢时胜在中型公募和券商资管领域优势明显,其V5.5系统在信创适配和复杂产品处理方面表现突出;融选科技作为新兴厂商,提供轻量化解决方案,适合中小型机构。文章从市场格局、系统定位、技术架构、成本构成和用户反馈五个维度进行深入比较,为金融机构选型提供参考。当前估值系统市场呈现"三国鼎立"格局,各具特色,选型需结合机构规模、

magbox520的博客 825

python 按单词 反转字符串, 字符串中各单词翻转 reverse words [-1::-1]

reverseWords.py # -*- coding: UTF-8 -*- # 翻转字符串 # 假设列表 list = [1,2,3,4], # list[0]=1, list[1]=2 ,而 -1 表示最后一个元素 list[-1]=4 ( 与 list[3]=4 一样) # inputWords[-1::-1] 有三个参数 # 第一个参数 -1 表示最后一个元素 # 第二个参数为空,表示移动到列表末尾 # 第三个参数为步长,-1 表示逆向

fareast_mzh的博客 2271

ADT MCP Server 把 ABAP 开发带进 Agent 模式

今天讨论 ADT MCP Server,不能只把它看成 Visual Studio Code 里多出来的一个开关。它真正有意思的地方,在于它把 ABAP 后端开发里那些原本需要手工点击、手工创建、手工激活、手工查服务元数据的动作,包装成一组可以被 GitHub Copilot 这类 coding agent 调用的工具。SAP 在 RAP130 练习里把它描述为运行在 ADT for Visual Studio Code 扩展内部的本地 HTTP Server,它实现的是 Model Context Pro

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 184

编程之reverseWords

模仿答案: class Solution { public: string reverseWords(string s) { int front = 0; int str_length = s.length(); for(int i = 0; i <= str_length; i++) {

hk121的博客 1574

MATLAB GUI 水果成熟度分级系统设计与实现

本文基于 MATLAB GUI 设计并实现了一款水果成熟度分级系统,能够准确地评估水果的成熟程度。在实现过程中,我们运用了 MATLAB 中的函数实现对图像的处理和分析,同时使用 GUI 界面增加了系统的易用性。值得一提的是,在实际操作中,我们应该结合实际需求对系统进行相应的改进与完善,以满足不同领域和应用场景下的需求。实验结果表明,本系统可以有效地检测出水果的成熟度,并对其进行精准的评分。因此,本文设计并实现了一款基于 MATLAB GUI 的水果成熟度分级系统。三、MATLAB 代码实现。

uote_e的博客 707

9.6华为OD机试真题 新系统 - 少儿爬山闯关积分游戏 (Java/Py/C/C++/Js/Go)

2026 华为OD机试真题9月6日华为OD上机新系统考试真题 100 分题型。

算法大师! 854

每题多学点——Reverse words【C语言】

1.循环需注意是否存在死循环,这很重要。2.进行复制字符串的操作时,通过“\0”进行封堵,有时很重要。3.处理问题换个思路,有时真的可以豁然开朗,大大降低问题难度。4.申请动态地址时,需要强制类型转换;并且,为避免使用时地址越界,可适当增加申请的地址大小。5.指针检测是否读到最后,印象中有*text!=NULL和*text!='\0',此处不太确定,留作探讨研究。

记录个人成长 775

CPU、Core、RISC、ARM等的前世今生

CPU、Core、RISC-V 、ARM、ASIC、FPGA、SOC概念及区分

nxin168的博客 1015

Leetcode 151 Reverse Words in a String

lc151 Reverse Words in a String 利用split(),将String分成一个String[],可以用正则表达式"\\s+"(第一个\转义,\s表示空格,+表示多个空格),也可以直接用" ",第二种方法快一些 然后按题意翻转即可,从后面遍历String,一次将元素放入新String(这里可以用StringBuilder,会比直接用+连接字符串快,最后sb.toStr...

weixin_30609331的博客 103

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【leetcode】【medium】【每日一题】151. Reverse Words in a String​​​​​​​

151. Reverse Words in a String Given an input string, reverse the string word by word. Example 1: Input: "the sky is blue" Output:"blue is sky the" Example 2: Input: " hello world! " Output...

lemonade13的博客 142

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Task4:LeetCode1:twoSum; LeetCode344:Reverse String;LeetCode151:Reverse Words in a String

1.Two Sum(两个数求和) class Solution: def twoSum(self, nums: 'List[int]', target: int) -> 'List[int]': dicti = {} for i, n in enumerate(nums): if n in dicti: ...

m0_37548423的博客 168

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

LeetCode(151)Reverse Words in a String

题目如下: Given an input string, reverse the string word by word. For example, Given s = "the sky is blue", return "blue is sky the". 分析如下:         很基础的题目,需要考虑各种corner cases,比如下列: 1 "

BUILD 4466

【LeetCode】 151. Reverse Words in a String 翻转字符串里的单词(Medium)(JAVA)每日一题

【LeetCode】 88. Merge Sorted Array 翻转字符串里的单词(Medium)(JAVA) 题目地址: https://leetcode.com/problems/merge-sorted-array/ 题目描述: Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one s...

qq_16927853的博客 199

小练习 - LeetCode151 Reverse Words in a String的C语言解法

LeetCode 151. Reverse Words in a String 很适合练习C语言基础,练习一个OJ题目除了找最佳解法,还可以多想想刻意去练习一些数据结构等其他知识点,让练习举一反三。 Given an input string, reverse the string word by word. Example: Input: “the sky is blue”, Output: ...

Life runs on code 673

【LeetCode】151. Reverse Words in a String

LeetCode151 传送门 一种解法: 容易想到两次遍历的方法。第一次遍历分词,第二次遍历反向拼接单词成为句子。然后可以将两次遍历改进为一次遍历。首先初始化一个空字符串s_rev,初始化指针end为原字符串最后一个位置加一。倒序遍历原字符串s,若s[i]为空格,则赋值end为i。否则,如果i - 1位置为空格,或i为0位置,则令s_rev拼接s[i:j]。但该方法没有使用pytho...

weixin_42344158的博客 264

LeetCode 151 Reverse Words in a String

思路1 不用split和trim函数。使用一个stack来从前往后存储单词,最后再依次pop出来即可。 复杂度 时间复杂度O(n), 空间复杂度O(n) 代码 class Solution { public String reverseWords(String s) { if(s.length() == 0) return ""; S...

我要上岸的博客 211

[Leetcode] 151. Reverse Words in a String

link: https://leetcode.com/problems/reverse-words-in-a-string/ Solution: split + reverse class Solution { public String reverseWords(String s) { if(s.length() == 0) return s; Strin...

Renoler的博客 139

leetcode 151 Reverse Words in a String (python)

Python Reverse Words in a String

快递小可的博客 2013

Leetcode 151题 Reverse Words in a String

Leetcode 151题 Reverse Words in a String

《致青春》——云梦泽 1103

[每日算法] leetcode第151题 Reverse Words in a String

原题目描述 Given an input string, reverse the string word by word. Example: Input: “the sky is blue”, Output: “blue is sky the”. Note: A word is defined as a sequence of non-space characters. Input stri...

大葱敏的博客 3557
上一篇: 【vue笔记】4.样式
下一篇: 【vue笔记】5.过滤器
AXIMI
博客等级 码龄10年 53粉丝 455原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值