**Problem Statement:**
Given the required input arguments, write an efficient algorithm to solve the **Reverse Words in a String** problem. Implement the required logic as specified by standard definitions for this classic algorithmic challenge.
**Hint / Expected Approach:**
Split + reverse + rejoin; handle multiple spaces
**Edge Cases to Consider:**
- (1) Single word
- (2) Multiple leading/trailing spaces
- (3) All spaces