Selles programmis õpite elemendisõnu sorteerima leksikograafilises järjekorras for loopi abil ja kui veel Java-ga.
Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:
- Java aasale
- Java kui … muidu avaldus
- Java string
Näide: Programm stringide sortimiseks sõnastiku järjekorras
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)); ) ) )
Väljund
Leksikograafilises järjekorras: C Java Python Ruby
Ülalolevas programmis salvestatakse 5 sorteeritava sõna loend muutujasse sõnad.
Seejärel vaatame iga sõna (sõnad (i)) läbi ja võrdleme seda kõigi massiivis olevate sõnadega (sõnad (j)). Selleks kasutatakse stringi meetodit salīdzata ().
Kui võrdlusto () tagastusväärtus on suurem kui 0, tuleb see asendis vahetada, st sõnad (i) tulevad sõnade (j) järele. Niisiis sisaldavad sõnad (i) igas iteratsioonis kõige varasemat sõna.
Täitmise etapidKordus | Esialgsed sõnad | i | j | sõnad () |
---|---|---|---|---|
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" ) |
Lõplik | ( "C", "Java", "Ruby", "Python" ) | 2 | 3 | ( "C", "Java", "Python", "Ruby" ) |