Lectura

Invertir Palabras en una cadena (Java, Python, PHP, Javascript)

Dado un string s, devuelve una cadena con las palabras de s en orden inverso, concatenadas por un solo espacio.

s = "El cielo es azul" s = "azul es cielo El"

Video

Código de la solución

Java

class Solution {
    public String reverseWords(String s) {
        String[] words = s.trim().split("\\s+");
        StringBuilder sb = new StringBuilder();

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

        return sb.toString();
    }
}

Python

class Solution(object):
    def reverseWords(self, s):
        words = s.split()
        return " ".join(reversed(words))

PHP

class Solution {

    /**
     * @param String $s
     * @return String
     */
    function reverseWords($s) {
        $words = preg_split('/\s+/', trim($s));
        return implode(' ', array_reverse($words));
    }
}

JavaScript

/**
 * @param {string} s
 * @return {string}
 */
var reverseWords = function(s) {
    return s.trim().split(/\s+/).reverse().join(' ');
};

Si te gustó el contenido, ¡visita mi canal de YouTube para ver más explicaciones sobre algoritmos y estructuras de datos!