Heim  >  Artikel  >  Java  >  Eine einfache und leicht verständliche Schnelllernmethode für die Java-Blasensortierung

Eine einfache und leicht verständliche Schnelllernmethode für die Java-Blasensortierung

PHPz
PHPzOriginal
2024-01-30 10:21:06378Durchsuche

Eine einfache und leicht verständliche Schnelllernmethode für die Java-Blasensortierung

Beherrschen Sie schnell die einfachste Art, Java-Bubble-Sortierung zu schreiben.

Bubble-Sortierung ist ein einfacher, aber ineffizienter Sortieralgorithmus, der den unsortierten Maximal- oder Minimalwert durch wiederholtes Austauschen benachbarter Elemente in die Sequenz einfügt. In diesem Artikel wird eine der einfachsten Möglichkeiten zum Schreiben einer Blasensortierung in Java vorgestellt und spezifische Codebeispiele bereitgestellt.

Die Grundidee der Blasensortierung besteht darin, zwei benachbarte Elemente zu vergleichen und ihre Positionen zu tauschen, wenn sie in der falschen Reihenfolge sind, sodass bei jedem Sortierdurchgang das größte (oder kleinste) Element an das Ende (oder den Anfang) verschoben wird der Ablauf ). Wiederholen Sie diesen Vorgang, bis die gesamte Sequenz sortiert ist. Das Folgende ist die einfachste Art, eine Blasensortierung zu schreiben:

public class BubbleSort {
    public static void bubbleSort(int[] arr) {
        int n = arr.length;
        for (int i = 0; i < n - 1; i++) {
            for (int j = 0; j < n - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    // 交换 arr[j] 和 arr[j + 1] 的位置
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
    }

    public static void main(String[] args) {
        int[] arr = {64, 34, 25, 12, 22, 11, 90};
        bubbleSort(arr);
        System.out.println("排序结果:");
        for (int i : arr) {
            System.out.print(i + " ");
        }
    }
}

Im obigen Codebeispiel definieren wir eine BubbleSort-Klasse, in der die bubbleSort-Methode zum Implementieren einer Blase verwendet wird Sortierlogik. In der Methode bubbleSort verwenden wir eine zweistufige Schleife, um das gesamte Array zu durchlaufen und Vergleichs- und Austauschvorgänge durchzuführen. Die äußere Schleife steuert die Anzahl der Sortierdurchgänge und jeder Durchlauf verteilt den unsortierten Maximalwert an das Ende der Sequenz. Die innere Schleife steuert die Vergleichs- und Austauschvorgänge jedes Durchgangs und sortiert, indem sie zwei benachbarte Elemente vergleicht und ihre Positionen austauscht. Nachdem alle Durchgänge abgeschlossen sind, werden die Elemente im Array in aufsteigender Reihenfolge sortiert. BubbleSort 类,其中 bubbleSort 方法用于实现冒泡排序逻辑。在 bubbleSort 方法中,我们使用两层循环来遍历整个数组并进行比较和交换操作。外层循环控制排序的趟数,每一趟都会将未排序的最大值冒泡到序列的末尾。内层循环控制每一趟的比较和交换操作,通过比较相邻的两个元素并交换它们的位置来实现排序。在完成所有的趟数后,数组中的元素将按照升序排列。

main 方法中,我们创建了一个包含一些无序元素的数组,并将其传递给 bubbleSort

In der Methode main erstellen wir ein Array mit einigen ungeordneten Elementen und übergeben es zum Sortieren an die Methode bubbleSort. Schließlich geben wir die sortierten Ergebnisse aus, indem wir das sortierte Array durchlaufen.

Anhand der obigen Codebeispiele können wir schnell die einfache Art und Weise beherrschen, Java-Bubble-Sortierung zu schreiben. Obwohl die Blasensortierung einfach ist, handelt es sich nicht um einen effizienten Sortieralgorithmus. Seine zeitliche Komplexität beträgt O(n^2) und seine Leistung beim Sortieren großer Datenmengen ist schlecht. Daher bevorzugen wir in der tatsächlichen Entwicklung die Verwendung anderer, effizienterer Sortieralgorithmen wie Schnellsortierung, Zusammenführungssortierung usw. 🎜

Das obige ist der detaillierte Inhalt vonEine einfache und leicht verständliche Schnelllernmethode für die Java-Blasensortierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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