题目描述
牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”
。
class Solution {
public:
string ReverseSentence(string str) {
string res = "", temp = ""; //res保存最终结果,temp保存当前处理的每个单词
for(int i = 0; i < str.size();i++){
if(str[i] == ' ') { //遇到空格,将单词加到最终结果的前面,并加空格,然后将temp置为空,处理下一个单词
res = " " + temp + res;
temp = "";
}
else
temp += str[i]; //当前不为空格,将字符直接加到temp中
}
if(temp.size()) res = temp + res; //处理到最后一个单词,没有空格,将结果直接加到res前面
return res;
}
};