Please solve the programming task below using a self-contained code snippet in a markdown code block.

Given an input string s, reverse the order of the words.
A word is defined as a sequence of non-space characters. The words in s will be separated by at least one space.
Return a string of the words in reverse order concatenated by a single space.
Note that s may contain leading or trailing spaces or multiple spaces between two words. The returned string should only have a single space separating the words. Do not include any extra spaces.
 
Please complete the following python code precisely:
```python
class Solution:
    def reverseWords(self, s: str) -> str:
```