Java >> Java tutorial >  >> Java

Java-program til at sortere et array i alfabetisk rækkefølge

I denne øvelse lærer vi, hvordan man sorterer elementerne i et array i alfabetisk rækkefølge. Sortering refererer til at arrangere data i rækkefølge enten alfabetisk eller numerisk. Men før du går videre, hvis du ikke er bekendt med begreberne for arrayet, så tjek artiklen Arrays in Java.

Input: a n m w r t s p

Output: a m n p r s t w

Ovenstående problem kan løses på følgende måder:

Fremgangsmåde 1:Brug compareTo()

Fremgangsmåde 2:Brug af Arrays.sort()

Fremgangsmåde 3:Brug af reverseOrder()

Lad os se på hver af disse metoder separat.

Program 1:Sorter et array i alfabetisk rækkefølge

I denne tilgang vil vi sortere et array i alfabetisk rækkefølge ved at sammenligne hvert element med de resterende elementer.

Algorithme

  1. Start
  2. Deklarer et array
  3. Initialiser arrayet
  4. Brug to til sløjfer til at sortere arrayet i alfabetisk rækkefølge.
  5. Brug den første for-løkke til at holde elementerne.
  6. Brug den anden for-løkke til at sammenligne med de resterende elementer.
  7. Brug compareTo() til at sammenligne.
  8. Skift array-elementerne.
  9. Udskriv det opdaterede array.
  10. Stop

Nedenfor er koden til det samme.

Nedenstående program viser, hvordan man sorterer et array i alfabetisk rækkefølge ved at bruge compareTo() metode.

//Java Program to sort an array in alphabetical order.
import java.util.Arrays;  
import java.util.Scanner;

public class Main  
{  
   public static void main(String args[])   
   {  
      Scanner sc=new Scanner(System.in);
      int n;   //Declare the array size
      System.out.println("Enter the number of elements ");
      n=sc.nextInt();    //Initialize the array size

      String fruits[]=new String[n];   //Declare the array
      System.out.println("Enter the String ");
      Scanner sc1=new Scanner(System.in);    
      for(int i=0; i<n ;i++)     //Initialize the array
      {
          fruits[i]=sc1.nextLine();
      }
 
        //logic for sorting     
         for(int i = 0; i<n; i++)   //Holds each element
         {  
             for (int j = i+1; j<n; j++)  //Check for remaining elements 
             {  
                //compares each elements of the array to all the remaining elements  
                if(fruits[i].compareTo(fruits[j])>0)   
                {  
                    //swapping array elements  
                    String temp = fruits[i];  
                    fruits[i] = fruits[j];  
                    fruits[j] = temp;  
                 }  
              }  
           }  
           //prints the sorted array in alphabetical order  
           System.out.println(Arrays.toString(fruits));  
       }  
}  


Indtast antallet af array-elementer:10
Indtast array-elementerne:
Apple
Custard Apple
Banana
Kiwi
Guava
Orange
Papaya
Brombær
Dadler
Druer
[Æble, banan, brombær, cremeæble, dadler, druer, guava, kiwi, appelsin, papaya, ]

Program 2:Sorter et array i alfabetisk rækkefølge

I denne tilgang vil vi sortere et array i alfabetisk rækkefølge ved hjælp af Arrays.sort() metoden.

Algorithme

  1. Start
  2. Deklarer et array
  3. Initialiser arrayet
  4. Ring til Arrays.sort() funktion til at sortere arrayet i alfabetisk rækkefølge.
  5. Udskriv det sorterede array.
  6. Stop.

Nedenfor er koden til det samme.

Nedenstående program viser, hvordan man sorterer et array i alfabetisk rækkefølge ved at bruge Arrays.sort() metode.

//Java Program to sort an array in alphabetical order.
import java.util.Arrays;  
import java.util.Scanner;

public class Main  
{  
   public static void main(String args[])   
   {  
      Scanner sc=new Scanner(System.in);
      Scanner sc1=new Scanner(System.in);

      int n;    //Declare array size
      System.out.println("Enter the number of elements ");
      n=sc.nextInt();     //Initialize array size

      String str[]=new String[n];   //Declare array
      System.out.println("Enter the String ");
      for(int i=0; i<n ;i++)     //Initialize array
      {
          str[i]=sc1.nextLine();
      }

      Arrays.sort(str);    //Sort the array in alphabetical order

      System.out.println(Arrays.toString(str));  //Display the array
   }  
}  


Indtast antallet af elementer
5
Indtast strengen
frankrig
indien
kina
tyskland
italien
[Kina, Frankrig, Tyskland, Indien, Italien]

Program 3:Sorter et array i alfabetisk rækkefølge

I denne tilgang vil vi sortere et array i alfabetisk rækkefølge ved hjælp af Arrays.sort() og sorter det igen i omvendt rækkefølge ved hjælp af reverseOrder() metode.

Algorithme

  1. Start
  2. Deklarer et array
  3. Initialiser arrayet
  4. Ring til Arrays.sort() funktion til at sortere arrayet i alfabetisk rækkefølge.
  5. Kald derefter reverseOrder() for at sortere arrayet i omvendt rækkefølge.
  6. Udskriv det sorterede array.
  7. Stop.

Nedenfor er koden til det samme.

Forklaring:Nedenstående program viser, hvordan man sorterer et array i omvendt alfabetisk rækkefølge ved hjælp af reverseOrder() metode.

/*Java Program to sort an array alphabetically in reverse order*/
import java.util.Arrays;  
import java.util.Scanner;
import java.util.*;  

public class Main  
{  
   public static void main(String args[])   
   {  
      Scanner sc=new Scanner(System.in);
      Scanner sc1=new Scanner(System.in);

      int n;    //Declare array size
      System.out.println("Enter the number of elements ");
      n=sc.nextInt();     //Initialize array size

      String str[]=new String[n];   //Declare array
      System.out.println("Enter the String ");
      for(int i=0; i<n ;i++)     //Initialize array
      {
          str[i]=sc1.nextLine();
      }

      Arrays.sort(str,Collections.reverseOrder());    //Sort the array in alphabetical order

      System.out.println(Arrays.toString(str));  //Display the array
   }  
}  


Indtast antallet af elementer
5
Indtast strengen
Mumbai
Pune
Chennai
Ranchi
Kolkata
[Ranchi, Pune, Mumbai, Kolkata, Chennai]


Java tag