Die binäre Einfügungssortierung ist eine Verbesserung des Einfügungssortierungsalgorithmus. Während des Sortieralgorithmus werden Elemente kontinuierlich in die zuvor sortierte Reihenfolge eingefügt. Da es sich bei der ersten Hälfte um eine sortierte Sequenz handelt, müssen wir nicht nacheinander nach dem Einfügepunkt suchen. Wir können die Suche nach dem Einfügepunkt mit der Halbsuchmethode beschleunigen.
public static void halfSort(int[] array) { int low, high, mid; for (int i = 1; i < array.length; i++) { tmp = array[i]; high = i - 1; while (low <= high) { mid = low + (high - low) / 2; if (array[mid] > tmp) high = mid - 1; } for (j = i - 1; j > high; j--) { array[j + 1] = array[j] } array[high + 1] = tmp;
Schematische Darstellung des Halbsortierungsalgorithmus:
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er für alle hilfreich ist, den Java-Halbsortierungsalgorithmus zu lernen.