Inverter as palavras de uma string

Dada uma string de entrada, inverta a ordem de suas palavras.

Exemplos

reverseWords("the sky is blue"); // "blue is sky the"
reverseWords("  hello world!  "); // "world! hello"
reverseWords("a good   example"); // "example good a"

Observações

  • Uma palavra é definida como uma sequência de caracteres que não são espaços.
  • A string de entrada pode conter espaços no início ou no fim. No entanto, a string invertida não deve conter espaços no início nem no fim.
  • Na string invertida, você deve reduzir os espaços consecutivos entre duas palavras a um único espaço.
  • Tente resolver isso em tempo linear.

Descrição e solução em vídeo