# LeetCode - 0557. Reverse Words in a String III
### 題目網址:https://leetcode.com/problems/reverse-words-in-a-string-iii/
###### tags: `LeetCode` `Easy` `字串`
```cpp=
/*
-LeetCode format-
Problem: 557. Reverse Words in a String III
Difficulty: Easy
by Inversionpeter
*/
class Solution {
void ReverseWord(string &input, int start, int end) {
int half = (end + start) >> 1;
for (int i = start; i < half; ++i)
swap(input[i], input[end - (i - start) - 1]);
}
public:
string reverseWords(string s) {
if (!s.size())
return "";
int last = 0;
for (int i = 0; i != s.size(); ++i)
if (s[i] == ' ')
ReverseWord(s, last, i), last = i + 1;
if (last != s.size())
ReverseWord(s, last, s.size());
return s;
}
};
```