Dans ce programme, vous apprendrez à trier les mots des éléments dans l'ordre lexicographique en utilisant une boucle for et if else dans Kotlin.
Exemple: programme pour trier les chaînes dans l'ordre du dictionnaire
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)) ) )
Lorsque vous exécutez le programme, la sortie sera:
Dans l'ordre lexicographique: C Java Python Ruby
Dans le programme ci-dessus, la liste de 5 mots à trier est stockée dans une variable, les mots.
Ensuite, nous parcourons chaque mot (mots (i)) et le comparons avec tous les mots (mots (j)) après dans le tableau. Cela se fait en utilisant la méthode compareTo () de string.
Si la valeur de retour de compareTo () est supérieure à 0, elle doit être échangée en position, c'est-à-dire que les mots (i) viennent après les mots (j). Ainsi, à chaque itération, le mot (i) contient le mot le plus ancien.
Étapes d'exécutionItération | Mots initiaux | je | j | mots() |
---|---|---|---|---|
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" ) |
Voici le code Java équivalent: programme Java pour trier les mots par ordre lexicographique