Beispielcode und laufende Ergebnisse der Java-Implementierung der Einfügungssortierung
Einfügungssortierung ist ein einfacher und häufig verwendeter Sortieralgorithmus, der in praktischen Anwendungen weit verbreitet ist. In diesem Artikel wird erläutert, wie die Java-Sprache zum Implementieren der Einfügungssortierung verwendet wird, und es werden entsprechende Codebeispiele und Ausführungsergebnisse angegeben.
Die Grundidee der Einfügesortierung besteht darin, das zu sortierende Array in zwei Teile zu unterteilen: sortiert und unsortiert. Zunächst enthält der sortierte Teil nur ein Element, und dann werden die Elemente des unsortierten Teils an den entsprechenden Positionen eingefügt des sortierten Teils der Reihe nach, bis alle Elemente eingefügt sind.
Das Folgende ist ein Beispielcode für die Implementierung der Einfügungssortierung in Java:
public class InsertionSort { public static void insertionSort(int[] arr) { int n = arr.length; for (int i = 1; i < n; i++) { int key = arr[i]; int j = i - 1; while (j >= 0 && arr[j] > key) { arr[j + 1] = arr[j]; j -= 1; } arr[j + 1] = key; } } public static void main(String[] args) { int[] arr = {5, 2, 10, 8, 3}; System.out.println("排序前:"); printArray(arr); insertionSort(arr); System.out.println("排序后:"); printArray(arr); } public static void printArray(int[] arr) { int n = arr.length; for (int i = 0; i < n; i++) { System.out.print(arr[i] + " "); } System.out.println(); } }
Die Methode insertionSort
im Code implementiert den Einfügungssortierungsalgorithmus. Es verwendet eine äußere Schleife, um jedes Element des unsortierten Teils zu durchlaufen und das Element an der entsprechenden Position im sortierten Teil einzufügen. Die innere Schleife sucht nach einer geeigneten Einfügeposition im sortierten Teil und verschiebt Elemente, die größer als das aktuelle Element sind, nach hinten. insertionSort
方法实现了插入排序算法。它使用一个外层循环遍历未排序部分的每个元素,将元素插入到已排序部分的合适位置。内层循环则是在已排序部分中寻找合适的插入位置,将比当前元素大的元素往后移动。
在main
方法中,我们定义了一个整型数组arr
,初始化了一组无序的元素。首先输出了排序前的数组,然后调用insertionSort
main
definieren wir ein ganzzahliges Array arr
und initialisieren einen Satz ungeordneter Elemente. Zuerst wird das Array vor der Sortierung ausgegeben, dann wird die Methode insertionSort
zum Sortieren aufgerufen und schließlich wird das sortierte Array ausgegeben. Die laufenden Ergebnisse lauten wie folgt: 排序前: 5 2 10 8 3 排序后: 2 3 5 8 10Sie können sehen, dass das ursprüngliche ungeordnete Array nach der Verarbeitung durch den Einfügungssortierungsalgorithmus erfolgreich von klein nach groß sortiert wurde. Die zeitliche Komplexität der Einfügungssortierung beträgt O(n^2) und ihre Leistung ist bei der Verarbeitung kleiner Datensätze besser. Bei großen Datensätzen nimmt die Leistung der Einfügungssortierung jedoch erheblich ab und ist nicht so gut wie bei anderen effizienten Sortieralgorithmen. Daher ist es in der tatsächlichen Entwicklung erforderlich, einen geeigneten Sortieralgorithmus entsprechend der spezifischen Situation auszuwählen. 🎜
Das obige ist der detaillierte Inhalt vonJava schreibt einen Einfügungssortierungsalgorithmus und gibt Ergebnisse aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!