LeetCode之Reverse Words in a String
1.(原文)问题描述
Given an input string, reverse the string word by word. For example,
Given s = "the sky is blue",
return "blue is sky the". click to show clarification. Clarification:
What constitutes a word?
A sequence of non-space characters constitutes a word.
Could the input string contain leading or trailing spaces?
Yes. However, your reversed string should not contain leading or trailing spaces.
How about multiple spaces between two words?
Reduce them to a single space in the reversed string.
2.问题翻译
对于一个输入的字符串,逐个词反转这个字符串 例如, 所给的字符串s = "the sky is blue",
返回 "blue is sky the". 说明: 每个词由什么组成? 由不含空格字符的序列组成每个词 输入的字符串的开头或者结尾能否包含空格? 是的,当然可以。但是在你反转的时候你应该把开头和结尾的字符空格去掉。 如果两个词之间含有多个空格呢? 在反转后的字符串中应该讲他们减少为一个空格。
3.思路分析
很显然在拿到字符串的时候首先先进行判断是否为空,如果为空应该原样输出;如果不为空则首先需要处理的情况就是考虑到字符串中每个词之间存在多个空格的情况,
我们需要将这些空格首先变成一个,最后开始处理这个字符串。通过获取字符串数组然后反向输出,在输出的时候拼接空格得到反转后的数组
4.实现过程
Solution.java
package ReverseWords; public class Solution { public String reverseWords(String s) { if(s == null||"".equals(s)){//判断是否为空,为空则直接返回
return "";
}
StringBuffer strBuffer = new StringBuffer();
String []tempArray = s.replaceAll("\\s{1,}", " ").split(" ");//去除多空格情况然后返回字符数组
for(int index = tempArray.length-1;index >= 0;index--){
strBuffer.append(tempArray[index]+" ");//拼接反转数组
}
return strBuffer.toString().trim();
}
}
SolutionTest.java
package ReverseWords; public class SolutionTest { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = " a b ";
System.out.println("反转后的字符串是:"+new Solution().reverseWords(str));
} }
5.感觉考察的东西不多,主要在于细节字符串中空格的处理还有就是字符串相关函数的应用
LeetCode之Reverse Words in a String的更多相关文章
- [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& ...
- [LeetCode] 186. Reverse Words in a String II 翻转字符串中的单词 II
Given an input string, reverse the string word by word. A word is defined as a sequence of non-space ...
- [LeetCode] 557. Reverse Words in a String III 翻转字符串中的单词 III
Given a string, you need to reverse the order of characters in each word within a sentence while sti ...
- Leetcode#557. Reverse Words in a String III(反转字符串中的单词 III)
题目描述 给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序. 示例 1: 输入: "Let's take LeetCode contest" 输 ...
- 【LeetCode】Reverse Words in a String 反转字符串中的单词
一年没有管理博客园了,说来实在惭愧.. 最近开始刷LeetCode,之前没刷过,说来也实在惭愧... 刚开始按 AC Rates 从简单到难刷,觉得略无聊,就决定按 Add Date 刷,以后也可能看 ...
- leetcode 557. Reverse Words in a String III 、151. Reverse Words in a String
557. Reverse Words in a String III 最简单的把空白之间的词反转 class Solution { public: string reverseWords(string ...
- leetcode - [1]Reverse Words in a String
Question: Reverse Words in a String Given an input string, reverse the string word by word. For exam ...
- LeetCode 345. Reverse Vowels of a String
Write a function that takes a string as input and reverse only the vowels(元音字母) of a string. Example ...
- 【leetcode】Reverse Words in a String
今天第一次在leetcode上提交了一个题目,据说这个网站基本上都是名企面试笔试题,今天无意一进去就看到第一题居然就是昨天的腾讯实习生笔试题,赶紧注册了个账号做题. 题目描述: Given an in ...
- Python [Leetcode 345]Reverse Vowels of a String
题目描述: Write a function that takes a string as input and reverse only the vowels of a string. Example ...
随机推荐
- JavaScript之二:this
在JavaScript中,this的指代对象是什么?最精辟的解释却只有一句话: when a function of an object was called, the object will be ...
- jQuery简要dom操作
文本 dom 获取标签 $(选择). 创建一个标签对象 $("标签"): 由于所有的返回jQuery对象,能够调用链(无论jQuery API 回报jQuery对象) 插入标签 内 ...
- 页面加速Chromium 预压 Prerendering
前者已经推出了一个博客prefetch预加载的网页资源,以提高网页加载速度,下面我们一起来看一下,以加速网页chromium prerendering.介绍prerendering之前.先介绍两个概念 ...
- 【ORACLE】使用数据泵的生产环境impd,expdp数据迁移
********************************************** ** 原文: blog.csdn.net/clark_xu 徐长亮专栏 **************** ...
- oracle当需要commit
今天oracle的SQL plus 运行该删除和查询操作,然后PL/SQL还运行查询.相同的句子,结果是不一样的.我郁闷很大,然后,突然想到这可能对双方造成由数据不一致,为什么不一致呢.就是没用com ...
- android 之 下载管理器 无论监测在当地的设计思路
我相信你.让应用市场.或其它下载,想不管是什么地方监测进展情况.而且很好的实现. 这里分享一个相对简单的,并防止内存溢出等..我们用一个引用弱结合View进展更新方法. Map<String, ...
- hdu 3068 最长回文(manachar模板)
Problem Description 给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度.回文就是正反读都是一样的字符串,如aba, abba等 Input 输 ...
- 1213 How Many Tables(简单并查集)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1213 简单并查集,统计单独成树的数量. 代码: #include <stdio.h> #i ...
- jQuery - 基于serializeArray的serializeObject
将表单序列化成JSON对象,注意不管是自实现的serializeObject()还是原生的serializeArray(),所要序列化的控件都必须要有name,而不是id jQuery.prototy ...
- CII-2.4指针常量和常量指针
#define T Stack_T typedef struct T *T; struct T { int count; struct elem { void *x; struct elem *lin ...