Heim > Java > javaLernprogramm > Elemente in Java sortieren und suchen

Elemente in Java sortieren und suchen

WBOY
Freigeben: 2023-08-30 20:09:10
nach vorne
1257 Leute haben es durchsucht

Elemente in Java sortieren und suchen

Sortieren und Suchen sind die grundlegenden Operationen, die wir an Arrays ausführen können. Sortieren bedeutet, die Elemente einer bestimmten Liste oder eines Arrays in aufsteigender oder absteigender Reihenfolge neu anzuordnen, während Suchen das Finden eines Elements oder seines Index in einer Liste bedeutet.

Obwohl es verschiedene Algorithmen gibt, um diese Operationen auszuführen, werden wir in diesem Artikel einige davon verwenden, um Elemente in Java zu sortieren und zu suchen. Wir werden sie einzeln studieren.

Methode 1: Verwenden Sie die integrierte Methode des Arrays

In diesem Abschnitt besprechen wir die folgenden Methoden, die beim Sortieren und Suchen von Elementen in einem Array helfen.

sort() – Es handelt sich um eine statische Methode der Arrays-Klasse, die das als Parameter übergebene Array in aufsteigender Reihenfolge sortiert.

Grammatik

Arrays.sort(nameOfarray);
Nach dem Login kopieren

binarySearch() – Es ist auch eine statische Methode der Arrays-Klasse. Es akzeptiert zwei Parameter: Der erste ist das Array, dessen Elemente durchsucht werden müssen, und der zweite ist das Element, das wir in diesem Array finden müssen.

Es gibt die Indexnummer des als Argument übergebenen Elements zurück.

Grammatik

Arrays.binarySearch(nameOfarray, element);
Nach dem Login kopieren

Beispiel

import java.util.*;
public class Srch {
   public static void main(String args[]) {
      int araylist[] = {9, 3, 56, 0, -2, -6, 2, 1, 80};
      System.out.print("The given unsorted list: ");
      // for each loop that prints the original array
      for (int print : araylist) {
         System.out.print(print + " ");
      } 
      Arrays.sort(araylist); 
      // method to sort given array
      System.out.println();
      System.out.print("The newly sorted list: ");
      // for each loop that prints the newly sorted array
      for (int print : araylist) {
         System.out.print(print + " ");
      } 
      System.out.println();
      // method to search given element
      int position = Arrays.binarySearch(araylist, 1);
      if(position > -1) {
         System.out.print("Element is available at index: " + position);
      } else {
         System.out.print("Element is not available");
      }
   }
} 
Nach dem Login kopieren

Ausgabe

The given unsorted list: 9 3 56 0 -2 -6 2 1 80 
The newly sorted list: -6 -2 0 1 2 3 9 56 80 
Element is available at index: 3
Nach dem Login kopieren

Methode 2: Verwenden Sie unsere benutzerdefinierte Logik

Sortieren mit Blasensortierung

Algorithmus

  • Schritt 1 – Deklarieren und initialisieren Sie zunächst ein Array mit dem Namen „araylist“ und eine Ganzzahlvariable mit dem Namen „temp“, um die verschobenen Elemente vorübergehend zu speichern.

  • Schritt 2 – Verwenden Sie zwei for-Schleifen, um das i-te Positionselement mit dem i + 1-ten Element zu vergleichen. Erstellen Sie einen if-Block innerhalb der zweiten for-Schleife, um zu überprüfen, welches Element größer ist, und führen Sie dann eine Verschiebungsoperation durch, um die Elemente in aufsteigender Reihenfolge neu anzuordnen.

  • Schritt 3 – Nun drucken wir mit jeder Schleife das sortierte Array.

Beispiel

public class Bubble {
   public static void main(String[] args) {
      int araylist[] = {9, 3, 56, 0, 2, 1, 80};
      int temp = 0; 
      System.out.print("The given unsorted list: ");
      for (int print : araylist) {
         System.out.print(print + " ");
      }   
      for (int i = 0; i < araylist.length; i++) {     
         for (int j = i+1; j < araylist.length; j++) {     
            if(araylist[i] > araylist[j]) {    
               temp = araylist[i];    
               araylist[i] = araylist[j];    
               araylist[j] = temp;    
            }     
         }     
      }
      System.out.println();
      System.out.print("The newly sorted list: ");
      for (int print : araylist) {
         System.out.print(print + " ");
      }     
   }     
}
Nach dem Login kopieren

Ausgabe

The given unsorted list: 9 3 56 0 2 1 80 
The newly sorted list: 0 1 2 3 9 56 80 
Nach dem Login kopieren

Suche mit linearer Suche

Algorithmus

  • Schritt 1 – Deklarieren und initialisieren Sie zunächst ein Array namens „araylist“ und eine Ganzzahlvariable namens „searchElem“, nach der wir im Array suchen. Wir benötigen außerdem zwei Integer-Variablen „isFound“ und „locate“.

  • Schritt 2 – Erstellen Sie nun eine for-Schleife, die bis zur Länge des Arrays läuft. Verwenden Sie in dieser Schleife einen if-Block, um zu prüfen, ob „searchElem“ im Array vorhanden ist. Sofern verfügbar, wird sein Index in der Variablen „locate“ gespeichert und die Variable „isFound“ auf 1 erhöht.

  • Schritt 3 – Als nächstes erstellen wir einen if else-Block, um zu prüfen, ob die Variable „isFound“ auf 1 steigt. Wenn es gleich 1 ist, bedeutet dies, dass das Element gefunden wurde und wir den Index zurückgeben. Wenn nicht, wird die Anweisung im else-Block ausgeführt.

Beispiel

public class Linear {
   public static void main(String[] args) {
      int araylist[] = {9, 3, 56, 0, 2, 1, 80};
      int searchElem = 0;
      int isFound = 0;
      int locate = 0;
      for(int i = 0; i < araylist.length; i++) {
         if(searchElem == araylist[i]) {
            isFound = 1;
            locate = i;
         } 
      }
      if(isFound == 1) {
         System.out.print("Element is available at index: " + locate);
      } else {
         System.out.print("Element is not available");
      }
   }
}
Nach dem Login kopieren

Ausgabe

Element is available at index: 3
Nach dem Login kopieren

Fazit

In diesem Artikel haben wir besprochen, wie man Array-Elemente sortiert und eine Suchoperation durchführt, um ein bestimmtes Element dieses Arrays zu finden. Wir können die integrierte Methode „sort()“ oder einen beliebigen Sortier- und Suchalgorithmus verwenden.

Das obige ist der detaillierte Inhalt vonElemente in Java sortieren und suchen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage