Given an input string, reverse the string word by word.
For example,
Given s = "the sky is blue
",
return "blue is sky the
".
中文:给定一个输入字符串,依照单词逆转之。
比如:
给定 s="the sky is blue",
返回 "blue is sky the"
说明:什么组成一个单词?
一个非空的字符序列组成一个单词。
输入的字符串能够包括头或尾的空格吗?
能够。可是你的倒转的字符串不应该包括头尾空格。
两个单词间有多个空格又如何呢?
在倒转的字符串中把它们降低为一个空格。
此题比較简单,主要考虑使用空格进行切割和空格的去除。
Java:
public String reverseWords(String s) { if(s.trim() == "") return null; String str[] = s.trim().split("\s+"); StringBuilder sb = new StringBuilder(); int len = str.length; for(int i=len-1;i>=0;i--){ if(str[i] == " ") continue; sb.append(str[i]+" "); } return sb.toString().trim(); }