Unter direkter Einfügungssortierung versteht man das Einfügen der zu sortierenden Elemente einzeln in die zuvor sortierte Reihenfolge, bis alle Elemente eingefügt wurden. Die Hauptschritte sind wie folgt:
1) Gehen Sie zunächst davon aus, dass das erste Element sortiert wurde.
2) Nehmen Sie dann das nächste Element heraus, das noch sortiert werden muss, dh das nächste Element nach dem sortierten Element, nehmen Sie das nächste Element heraus, legen Sie es als einzufügendes Element fest und scannen Sie in der Sortierung von hinten nach vorne Elementreihenfolge. Wenn das Element (sortiert) größer als das einzufügende Element ist, verschieben Sie das Element an die nächste Position.
3) Wiederholen Sie Schritt 2, bis Sie eine Position finden, an der das sortierte Element kleiner oder gleich dem zu sortierenden Element ist, und fügen Sie das Element ein.
4) Wiederholen Sie die Schritte 2 und 3, um die Sortierung abzuschließen.
Zum Beispiel:
importjava.util.Arrays;publicclassMain{publicstaticvoidmain(Stringargs[]){int[]arr=newint[]{17,62,39,52,8,24};for(inti=1;i<arr.length;i++ ){//Starten Sie den Vergleich ab dem zweiten Element inttemp=arr[i];//Zeichnen Sie das aktuelle Element auf for(intj=i-1;j>=0;j--){//Starten Sie den Vergleich ab dem letzten element if (arr[j]>temp){//Wenn es größer als das aktuelle Element ist arr[j+1]=arr[j];//Alle Elemente von hier aus um eine Position nach vorne verschieben arr[j]=temp; / /Fügen Sie das aktuelle Element in arr[j]}}}for(inti=0;i<arr.length;i++){System.out.print(arr[i]+);}}} ein
Die Laufergebnisse sind wie folgt:
81724395262