Medium
Reverse Words in a String II — C++
Full explanation · Time O(n) · Space O(1)
// Time: O(n)
// Space: O(1)
class Solution {
public:
void reverseWords(string &s) {
reverse(s.begin(), s.end());
for (int i = 0, j = 0; j <= s.length(); ++j) {
if (j == s.length() || s[j] == ' ') {
reverse(s.begin() + i, s.begin() + j);
i = j + 1;
}
}
}
};