151. Reverse Words in a String

Difficulty:
Related Topics:
Similar Questions:

Problem

Given an input string, reverse the string word by word.

Example:  

Input: "the sky is blue",
Output: "blue is sky the".

Note:

Follow up: For C programmers, try to solve it in-place in O(1) space.

Solution (Java)

class Solution {

    public String reverseWords(String s) {

        String[] words = s.split("\\s+");
        StringBuilder str = new StringBuilder();

        for(int i = words.length - 1; i >= 0; --i){
            str.append(words[i] + " ");
        }

        return str.toString().trim();
    }
}

Solution (Javascript)

/**
 * @param {string} str
 * @returns {string}
 */
var reverseWords = function(str) {
  return str.split(' ').filter(s => s !== '').reverse().join(' ');
};

Explain:

nope.

Complexity: