Given an input string, reverse the string word by word.
For example,
Given s = "the sky is blue
",
return "blue is sky the
".
首先用string流读取到ector<string>中,然后逆序输出。
class Solution {
public:
void reverseWords(string &str)
{
vector<string> vstring;
istringstream iss(str);
string temp;
while(iss >> temp)
{
vstring.push_back(temp);
}
str = "";
if(vstring.size()==0)
return;
for(vector<string>::reverse_iterator riter = vstring.rbegin(); riter != vstring.rend(); riter++) // using reverse iterator
{
str += *riter;
if(riter != (vstring.rend()-1))
str += " ";
}
return;
}
};