Inverter as palavras de uma string

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

Exemplos

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

Notas

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

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