Програма Java за сортиране на елементи в лексикографски ред (Речник на речника)

В тази програма ще се научите да сортирате думите на елементите в лексикографски ред с помощта на цикъл for и ако е друго в Java.

За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:

  • Java за Loop
  • Java, ако … друго Изявление
  • Java String

Пример: Програма за сортиране на низове в реда на речника

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

Изход

 В лексикографски ред: C Java Python Ruby

В горната програма списъкът от 5 думи за сортиране се съхранява в променлива, думи.

След това преглеждаме всяка дума (думи (i)) и я сравняваме с всички думи (думи (j)) след нея в масива. Това се прави с помощта на метода за сравнение на stringTo ().

Ако върнатата стойност на compareTo () е по-голяма от 0, тя трябва да бъде разменена в позиция, т.е. думите (i) идват след думите (j). И така, във всяка итерация думите (i) съдържат най-ранната дума.

Стъпки за изпълнение
Повторение Първоначални думи i j думи ()
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" )
Финал ( "C", "Java", "Ruby", "Python" ) 2 3 ( "C", "Java", "Python", "Ruby" )

Интересни статии...