Java-ohjelma elementtien lajitteluun leksikografisessa järjestyksessä (sanakirjajärjestys)

Tässä ohjelmassa opit lajittelemaan elementtisanat leksikografisessa järjestyksessä for for -silmukalla ja jos muualla Javalla.

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:

  • Java silmukalle
  • Java jos… muuten lausunto
  • Java-merkkijono

Esimerkki: Ohjelma merkkijonojen lajittelemiseksi sanakirjajärjestyksessä

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

Tuotos

 Leksikografisessa järjestyksessä: C Java Python Ruby

Yllä olevassa ohjelmassa 5 lajiteltavan sanan luettelo tallennetaan muuttujaan, sanoihin.

Sitten, silmukka läpi jokaisen sanan (sanat (i)) ja vertaa sitä kaikkiin sanoihin (sanat (j)) sen jälkeen taulukossa. Tämä tehdään merkkijonon vertailumenetelmällä ().

Jos vertailun () paluuarvo on suurempi kuin 0, se on vaihdettava sijaintiinsa, ts. Sanat (i) tulevat sanojen (j) jälkeen. Joten sanat (i) sisältävät jokaisessa iteraatiossa aikaisimman sanan.

Suoritusvaiheet
Toisto Alkusanat i j sanat()
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" )
Lopullinen ( "C", "Java", "Ruby", "Python" ) 2 3 ( "C", "Java", "Python", "Ruby" )

Mielenkiintoisia artikkeleita...