给定一个字符串,逐个翻转字符串中的每个单词。
您在真实的面试中是否遇到过这个题?
Yes
说明
单词的构成:无空格字母构成一个单词
输入字符串是否包括前导或者尾随空格?可以包括,但是反转后的字符不能包括
如何处理两个单词间的多个空格?在反转字符串中间空格减少到只含一个
class Solution {
public:
/**
* @param s : A string
* @return : A string
*/
string reverseWords(string s) {
// write your code here
string news;
while(s[s.length()-1]==' '){
s.pop_back();
}
while(s[0]==' '){
s.erase(0,1);
}
if((s.rfind(' '))==-1){
return s;
}
int it=s.rfind(' ');
while( it!=-1 ){
news=news+s.substr(it+1,s.length()-it-1)+" ";
s.erase(it,s.length()-1);
it=s.rfind(' ');
}
news=news+s;
return news;
}
};