I dette programmet lærer du å sortere elementordene i leksikografisk rekkefølge ved hjelp av en for-loop og hvis ellers i Java.
For å forstå dette eksemplet, bør du ha kunnskap om følgende Java-programmeringsemner:
- Java for Loop
- Java if… else Erklæring
- Java-streng
Eksempel: Program for å sortere strenger i ordbokrekkefø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)); ) ) )
Produksjon
I leksikografisk rekkefølge: C Java Python Ruby
I det ovennevnte programmet lagres listen over 5 ord som skal sorteres i en variabel, ord.
Deretter løper vi gjennom hvert ord (ord (i)) og sammenligner det med alle ord (ord (j)) etter det i matrisen. Dette gjøres ved å bruke strengens comparTo () -metode.
Hvis returverdien til comparTo () er større enn 0, må den byttes i posisjon, dvs. ord (i) kommer etter ord (j). Så i hver iterasjon inneholder ord (i) det tidligste ordet.
Utførelse trinnIterasjon | Innledende 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" ) |