Das Beispiel dieses Artikels zeigt die Auswahl der Zusammenfassung der Java -Sort -Algorithmus. Teilen Sie es für alle für Ihre Referenz. Die spezifische Analyse ist wie folgt:
Der grundlegende Betrieb bei der Auswahl der Sortierung ist eines der aus den zu sortierenden Datenelementen ausgewählten minimalen (oder maximalen) Elementen, und die Reihenfolge befindet sich am Ende der Anzahl der Sequenzen, bis die Datenelemente sortiert werden sollen. Der Algorithmus ist instabil, der zusätzliche Raum von O (1), die Komplexität der Vergleichszeit ist O (n^2) und die zeitliche Komplexität des Austauschs O (n), die nicht adaptiv ist. Es wird in den meisten Fällen nicht empfohlen. Nur wenn Sie die Anzahl der Börsen reduzieren möchten.
Grundlegende Ideen
Die direkte Auswahl der Datei der n-aufgenommenen Datei kann direkt über die N-1-Reise ausgewählt werden, um die geordneten Ergebnisse zu erhalten:
① Anfangszustand: Der ungeordnete Bereich ist R [1..N] und der ordnungsgemäße Bereich ist leer.
② Die erste Sorte ist in der ungeordneten Fläche r [1..n] sortiert, um den Mindestdatensatz R [k] auszuwählen und sie mit dem ersten Datensatz R [1] im ungeordneten Bereich auszutauschen. 2..n] werden in neu geordnete Bereiche der Anzahl der Datensätze und einer neuen ungeordneten Fläche mit einer Reihe von Datensätzen und der Anzahl der Datensätze um 1 geändert.
Nympho
③ Sortierung ii
Zu Beginn der Art der I sind die aktuell geordneten Bereiche und Störungsbereiche R [1..i-1] und R (1 ≤ i ≤ N-1). Diese Sortierung wählte den minimalen Datensatz R [k] aus dem aktuellen ungeordneten Bereich aus und tauschen Sie sie mit dem ersten Datensatz R im ungeordneten Bereich aus, so dass R [1..i] und R in Aufzeichnungen unterteilt sind. Bereiche der Anzahl und ein neuer ungeordneter Bereich mit einer Reihe von Aufzeichnungen nahmen um 1 ab.
Auf diese Weise kann die direkte Auswahl der Dateien der n-aufgenommenen Datei direkt durch N-1-Fahrten ausgewählt werden, um geordnete Ergebnisse zu erzielen.
Code -Implementierung
Public class test {public static int [] a = {10,32,1,9,5,7,12,0,4,3}; {int i; printf ("%3S", a); ; I ++) system.out ; Wert des Mindestwerts für die Speicherung für (j = i; j <in <index; j ++) {if (a [j] <minvalue) // Finden Sie den Mindestwert {minValue {minValue = a [j]; / Minimal indexmin = j;} temp = a; k (k (k = 0; k <index; k ++) system.out.printf ("%3s", a [k]); System.out.println ("");}}}}}}}
Wie bei der sprudelnden Sortiermethode muss der Außenschichtzyklus immer noch das N-1-Mal durchführen, und seine Effizienz ist immer noch schlecht.
Es ist zu hoffen, dass dieser Artikel für Java -Programmdesign aller hilfreich ist.