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