题解 | #翻转单词序列#
翻转单词序列
https://www.nowcoder.com/practice/3194a4f4cf814f63919d0790578d51f3
class Solution {
public:
string ReverseSentence(string str) {
if (str.size() == 0) {
return str;
}
string res;
int j = str.size() - 1;
int i = str.size() - 1;
while (j >= 0) {
while (j >= 0 && str[j] != ' ') {
j--;
}
res += str.substr(j + 1, i - j);
res+=' ';
// 跳过空格
while(j >= 0 && str[j] == ' '){
j--;
}
i = j;
}
return res.substr(0,res.size()-1);
}
};
双指针,记录每一个单词的起始位置和长度,然后进行字符串添加即可。
查看10道真题和解析