En este programa, aprenderá a ordenar las palabras de los elementos en orden lexicográfico usando un bucle for y si no en Kotlin.
Ejemplo: programa para ordenar cadenas en el orden del diccionario
fun main(args: Array) ( val words = arrayOf("Ruby", "C", "Python", "Java") for (i in 0… 2) ( for (j in i + 1… 3) ( if (words(i).compareTo(words(j))> 0) ( // swap words(i) with words(j( val temp = words(i) words(i) = words(j) words(j) = temp ) ) ) println("In lexicographical order:") for (i in 0… 3) ( println(words(i)) ) )
Cuando ejecute el programa, la salida será:
En orden lexicográfico: C Java Python Ruby
En el programa anterior, la lista de 5 palabras a ordenar se almacena en una variable, palabras.
Luego, recorremos cada palabra (palabras (i)) y la comparamos con todas las palabras (palabras (j)) después de ella en la matriz. Esto se hace usando el método compareTo () de string.
Si el valor de retorno de compareTo () es mayor que 0, debe intercambiarse en la posición, es decir, las palabras (i) vienen después de las palabras (j). Entonces, en cada iteración, las palabras (i) contienen la primera palabra.
Pasos de ejecuciónIteración | Palabras iniciales | yo | j | palabras() |
---|---|---|---|---|
1 | ( "Ruby", "C", "Python", "Java" ) | 0 | 1 | ( "C", "Ruby", "Python", "Java" ) |
2 | ( "C", "Ruby", "Python", "Java" ) | 0 | 2 | ( "C", "Ruby", "Python", "Java" ) |
3 | ( "C", "Ruby", "Python", "Java" ) | 0 | 3 | ( "C", "Ruby", "Python", "Java" ) |
4 | ( "C", "Ruby", "Python", "Java" ) | 1 | 2 | ( "C", "Python", "Ruby", "Java" ) |
5 | ( "C", "Python", "Ruby", "Java" ) | 1 | 3 | ( "C", "Java", "Ruby", "Python" ) |
Final | ( "C", "Java", "Ruby", "Python" ) | 2 | 3 | ( "C", "Java", "Python", "Ruby" ) |
Aquí está el código Java equivalente: programa Java para ordenar palabras en orden lexicográfico