标签:blog http io ar java for sp div on
Given an input string, reverse the string word by word.
For example,
Given s = "the sky is blue",
return "blue is sky the".
c++版:
class Solution {
public:
void reverseWords(string &s)
{
string ss;
int i = s.length()-1;
while(i>=0){
while(i>=0&&s[i] ==‘ ‘){
i--;
}
if(i<0) break;
if(ss.length()!=0){
ss.push_back(‘ ‘);
}
string temp;
for(;i>=0&&s[i]!=‘ ‘;i--){
temp.push_back(s[i]);
}
reverse(temp.begin(),temp.end());
ss.append(temp);
}
s = ss;
}
};
java版:
public class Solution {
public String reverseWords(String s) {
StringBuilder result_str = new StringBuilder();
if(s.length()==0)//s="";
{
return new String("");
}
for (int i = s.length() - 1; i >= 0;) {
while (i >= 0 && s.charAt(i) == ‘ ‘) {
i--;
}
if (i < 0) {
break;
}
StringBuilder str = new StringBuilder();
while (i >= 0 && s.charAt(i) != ‘ ‘) {
str.append(s.charAt(i--));
}
str.reverse();
str = str.append(" ");
result_str.append(str);
}
if(result_str.length()==0)//s=" ";
{
return new String("");
}
return new String(result_str.deleteCharAt(result_str.length()-1));
}
}
标签:blog http io ar java for sp div on
原文地址:http://www.cnblogs.com/zlz-ling/p/4035475.html