Programma Java per ordinare gli elementi in ordine lessicografico (ordine del dizionario)

In questo programma imparerai a ordinare le parole degli elementi in ordine lessicografico usando un ciclo for e se altro in Java.

Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione Java:

  • Java per Loop
  • Istruzione Java if … else
  • Java String

Esempio: programma per ordinare le stringhe nell'ordine del dizionario

 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)); ) ) )

Produzione

 In ordine lessicografico: C Java Python Ruby

Nel programma sopra, l'elenco di 5 parole da ordinare è memorizzato in una variabile, parole.

Quindi, ripetiamo ogni parola (parole (i)) e la confrontiamo con tutte le parole (parole (j)) dopo di essa nell'array. Questo viene fatto utilizzando il metodo compareTo () della stringa.

Se il valore di ritorno di compareTo () è maggiore di 0, deve essere scambiato in posizione, cioè le parole (i) vengono dopo le parole (j). Quindi, in ogni iterazione, le parole (i) contengono la prima parola.

Fasi di esecuzione
Iterazione Parole iniziali io j parole()
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" )
Finale ( "C", "Java", "Ruby", "Python" ) 2 3 ( "C", "Java", "Python", "Ruby" )

Articoli interessanti...