Java-program til at sortere elementer i leksikografisk rækkefølge (ordbogsrækkefølge)

I dette program lærer du at sortere elementordene i leksikografisk rækkefølge ved hjælp af en for-loop og hvis ellers i Java.

For at forstå dette eksempel skal du have kendskab til følgende Java-programmeringsemner:

  • Java til Loop
  • Java hvis … ellers Erklæring
  • Java-streng

Eksempel: Program til sortering af strenge i ordbordsrækkefølge

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

Produktion

 I leksikografisk rækkefølge: C Java Python Ruby

I ovenstående program er listen over 5 ord, der skal sorteres, gemt i en variabel, ord.

Derefter løber vi gennem hvert ord (ord (i)) og sammenligner det med alle ord (ord (j)) efter det i arrayet. Dette gøres ved hjælp af strengens sammenligningsmetode ().

Hvis returværdien af ​​comparTo () er større end 0, skal den byttes i position, dvs. ord (i) kommer efter ord (j). Så i hver iteration indeholder ord (i) det tidligste ord.

Udførelsestrin
Iteration Indledende ord jeg j ord ()
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" )
Endelig ( "C", "Java", "Ruby", "Python" ) 2 3 ( "C", "Java", "Python", "Ruby" )

Interessante artikler...