
Sponsored
Sponsored
This approach involves splitting the original string into individual words using space as a delimiter, reversing the list of words, and then joining them back together with a single space.
Time Complexity: O(N), where N is the length of the string, as we process each character once.
Space Complexity: O(N), additional space for intermediate and result storage.
1function reverseWords(s) {
2 return s.trim().split(/\s+/).reverse().join(' ');
3}
4
5let input = " hello world ";
6let output = reverseWords(input);
7console.log(output);The JavaScript solution makes use of trim(), split(), reverse(), and join() to effectively manage spaces and reverse words.
This optimized approach manipulates the string in place by using a character array. We'll first reverse the entire string, and then reverse each word to return them to their correct order.
Time Complexity: O(N), where N is the number of characters in the string.
Space Complexity: O(1), as the operation is done in-place without extra space.
1
The Python solution focuses on reversing the entire string initially, followed by reversing every word back to its correct order. The final result is constructed by joining words effectively.