Programme Java pour trier les éléments dans l'ordre lexicographique (ordre du dictionnaire)

Dans ce programme, vous apprendrez à trier les mots des éléments dans l'ordre lexicographique en utilisant une boucle for et if else en Java.

Pour comprendre cet exemple, vous devez avoir la connaissance des rubriques de programmation Java suivantes:

  • Java pour Loop
  • Instruction Java if… else
  • Chaîne Java

Exemple: programme pour trier les chaînes dans l'ordre du dictionnaire

 public class Sort ( public static void main(String() args) ( String() words = ( "Ruby", "C", "Python", "Java" ); for(int i = 0; i < 3; ++i) ( for (int j = i + 1; j 0) ( // swap words(i) with words(j( String temp = words(i); words(i) = words(j); words(j) = temp; ) ) ) System.out.println("In lexicographical order:"); for(int i = 0; i < 4; i++) ( System.out.println(words(i)); ) ) )

Production

 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 la chaîne.

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écution
Ité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" )

Articles intéressants...