Programa Java para classificar elementos em ordem lexicográfica (ordem de dicionário)

Neste programa, você aprenderá a classificar as palavras do elemento em ordem lexicográfica usando um loop for e if else em Java.

Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação Java:

  • Java para Loop
  • Instrução Java if… else
  • Java String

Exemplo: programa para classificar strings na ordem do dicionário

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

Resultado

 Em ordem lexicográfica: C Java Python Ruby

No programa acima, a lista de 5 palavras a serem ordenadas é armazenada em uma variável, palavras.

Em seguida, percorremos cada palavra (palavras (i)) e as comparamos com todas as palavras (palavras (j)) depois dela no array. Isso é feito usando o método compareTo () da string.

Se o valor de retorno de compareTo () for maior que 0, ele deve ser trocado de posição, ou seja, as palavras (i) vêm depois das palavras (j). Portanto, em cada iteração, as palavras (i) contêm a palavra mais antiga.

Etapas de execução
Iteração Palavras iniciais Eu j palavras()
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" )

Artigos interessantes...