Java-Sortierung Beispiel für InsertionSort-Einfügungssortierung
Einfügesortierung の Implementierung
Die Einfügungsart ist wie das Abschließen einer Wette, z. B. eine Doppelschnalle. Beim Kartenziehen nimmt man jeweils eine Karte und vergleicht diese Karte nacheinander mit den vorherigen Karten. Wählen Sie, wo diese Karte eingelegt werden soll, und spielen Sie die Karten reibungsloser ab, nachdem Sie die Reihenfolge festgelegt haben. Andernfalls wäre es schwierig, sie einzeln zu finden. Es ist auch nicht förderlich für die Gesamtsituation des Kartenspiels. Schauen Sie sich das Bild unten an
Unter der Annahme, dass die Kreuz-7 zum ersten Mal gezogen wird, ist keine Sortierung erforderlich. Weil es nur eine Karte gibt
, dann ziehe ich Kreuz 10 . Da 10 größer als 7 ist, ist keine Sortierung erforderlich.
Dann Karten ziehen. Ich habe festgestellt, dass ich 5 Kreuze gezogen habe . Zögern Sie zu diesem Zeitpunkt nicht, 14 Uhr ist wirklich keine große Sache. Karten entschieden abwerfen
Dann vergleichen wir 5 und 10. 5 ist weniger als 10, also tauschen Sie die Plätze.
Nehmen Sie 5 und vergleichen Sie es mit 7. 5 ist kleiner als 7. Vertauschen Sie also die Positionen von 5 und 7, um zu erhalten.
Es ist zu diesem Zeitpunkt bereits sortiert. Das Prinzip ist so.
Weil es relativ einfach ist. Fügen Sie den Code direkt ein
// O(n^2) 最坏的情况 // 最好的情况 O(n) public static void sort(Comparable[] a) { for (int i = 1; i < a.length; i++) { for (int j = i ; j > 0; j--) { if (less(a[j], a[j - 1])) exch(a, j, j - 1); else break; } } } public static void sort(Comparable[] a, int low, int hi) { for (int i = low; i <= hi ; i++) { for (int j = i ; j > low; j--) { if (less(a[j], a[j - 1])) exch(a, j, j - 1); else break; } } } InsertSort
Leistungsanalyse
Das schlimmste Szenario ist Die jeweils gezogene Karte ist die kleinste. Zu diesem Zeitpunkt müssen Sie jedes Mal vom Schwanz zum Kopf wechseln. Die Zeit ist proportional zu N^2
Im besten Fall wurde sie sortiert. Weil es bereits sortiert ist. Die jeweils gezogenen Karten müssen also nicht sortiert werden. Die Zeit ist proportional zu N
Das obige ist der detaillierte Inhalt vonJava-Sortierung Beispiel für InsertionSort-Einfügungssortierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Leitfaden zur Quadratwurzel in Java. Hier diskutieren wir anhand eines Beispiels und seiner Code-Implementierung, wie Quadratwurzel in Java funktioniert.

Leitfaden zur perfekten Zahl in Java. Hier besprechen wir die Definition, Wie prüft man die perfekte Zahl in Java?, Beispiele mit Code-Implementierung.

Leitfaden zur Armstrong-Zahl in Java. Hier besprechen wir eine Einführung in die Armstrong-Zahl in Java zusammen mit einem Teil des Codes.

Leitfaden zum Zufallszahlengenerator in Java. Hier besprechen wir Funktionen in Java anhand von Beispielen und zwei verschiedene Generatoren anhand ihrer Beispiele.

Leitfaden für Weka in Java. Hier besprechen wir die Einführung, die Verwendung von Weka Java, die Art der Plattform und die Vorteile anhand von Beispielen.

Leitfaden zur Smith-Zahl in Java. Hier besprechen wir die Definition: Wie überprüft man die Smith-Nummer in Java? Beispiel mit Code-Implementierung.

In diesem Artikel haben wir die am häufigsten gestellten Fragen zu Java Spring-Interviews mit ihren detaillierten Antworten zusammengestellt. Damit Sie das Interview knacken können.

Java 8 führt die Stream -API ein und bietet eine leistungsstarke und ausdrucksstarke Möglichkeit, Datensammlungen zu verarbeiten. Eine häufige Frage bei der Verwendung von Stream lautet jedoch: Wie kann man von einem Foreach -Betrieb brechen oder zurückkehren? Herkömmliche Schleifen ermöglichen eine frühzeitige Unterbrechung oder Rückkehr, aber die Stream's foreach -Methode unterstützt diese Methode nicht direkt. In diesem Artikel werden die Gründe erläutert und alternative Methoden zur Implementierung vorzeitiger Beendigung in Strahlverarbeitungssystemen erforscht. Weitere Lektüre: Java Stream API -Verbesserungen Stream foreach verstehen Die Foreach -Methode ist ein Terminalbetrieb, der einen Vorgang für jedes Element im Stream ausführt. Seine Designabsicht ist
