Die Blasensorte basiert auf der Idee, wiederholt Paare benachbarte Elemente zu vergleichen und dann ihre Positionen auszutauschen, wenn sie in der falschen Reihenfolge existieren.
Beispiel:
Referenz: Hackerearth
Die Insertions -Sortierung basiert auf der Idee, dass in jeder Iteration ein Element aus den Eingabelementen verbraucht wird, um seine korrekte Position zu finden, dh die Position, zu der es in ein sortiertes Array gehört.
Es iteriert die Eingabelemente, indem es das sortierte Array bei jeder Iteration erweitert. Es vergleicht das aktuelle Element mit dem größten Wert im sortierten Array. Wenn das aktuelle Element größer ist, lässt es das Element an seiner Stelle und geht zum nächsten Element weiter, sonst findet es seine korrekte Position in dem sortierten Array und bewegt es an diese Position. Dies geschieht durch die Verlagerung aller Elemente, die größer als das aktuelle Element sind, im sortierten Array auf eine Position vor uns
Beispiel:
Referenz: Hackerearth
Merge-Sortierung ist ein Divide-and-Conquer-Algorithmus, der auf der Idee basiert, eine Liste in mehrere Unterlisten aufzuteilen, bis jeder Sublist aus einem einzelnen Element besteht und diese Untervermieter auf eine Weise verschmelzen, die zu einer sortierten Liste führt.
Idee:
Teilen Sie die unsortierte Liste in Sublisten auf, die jeweils Element enthält. Nehmen Sie angrenzende Paare von zwei Singleton -Listen und fusionieren Sie sie zu einer Liste von 2 Elementen. Umwandle nun in Listen der Größe 2. Wiederholen Sie den Vorgang, bis eine einzelne sortierte Liste der erhaltenen erhalten wurde. Während des Vergleichs von zwei Untervermietern zur Verschmelzung wird das erste Element beider Listen berücksichtigt. Während des Sortierens in aufsteigender Reihenfolge wird das Element, das einen geringeren Wert hat, zu einem neuen Element der sortierten Liste. Diese Prozedur wird wiederholt, bis beide kleineren Unterschreiber leer sind und der neue kombinierte Sublist alle Elemente beider Sublisten umfasst.
Beispiel:
Referenz: Hackerearth, Geeksforgeeks
Schnelle Sortierung basiert auf dem Ansatz von Divide-and-Conquer, der auf der Idee basiert, ein Element als Drehelement zu wählen und das Array um es zu partitionieren, so dass: linke Seite des Drehzahl alle Elemente enthält, die weniger als die rechte Seite des Pivot-Elements sind
Es reduziert die Raumkomplexität und beseitigt die Verwendung des Hilfsarrays, das in Zusammenführungsart verwendet wird. Die Auswahl eines zufälligen Pivots in einem Array führt in den meisten Fällen zu einer verbesserten Zeitkomplexität.
Beispiel:
Referenz: Hackerearth, Geeksforgeeks
Der Auswahl -Sortieralgorithmus sortiert ein Array, indem er das minimale Element (berücksichtigt aufsteigender Reihenfolge) wiederholt aus dem ungeortierten Teil findet und es am Anfang stellt. Der Algorithmus hält zwei Subtarrays in einem bestimmten Array.
In jeder Iteration der Sortierart wird das minimale Element (berücksichtigt aufsteigender Reihenfolge) aus dem ungeortierten Subtarray ausgewählt und in die sortierte Subtarray verlegt.
Beispiel:
Stapel sind dynamische Datenstrukturen, die dem letzten im ersten Out -Prinzip (LIFO) folgen. Der letzte Gegenstand, der in einen Stapel eingefügt wurde, ist der erste, der daraus gelöscht wird.
Elemente einfügen und löschen
Stapel haben Einschränkungen für die Einfügung und Löschung von Elementen. Elemente können nur von einem Ende des Stapels von oben eingesetzt oder gelöscht werden. Das Element oben wird als Top -Element bezeichnet. Die Operationen des Einfügens und Löschens von Elementen werden als Push () bzw. pop () bezeichnet.
Wenn das obere Element eines Stapels gelöscht wird, wird das Element direkt unter dem vorherigen oberen Element zum neuen oberen Element des Stapels, wenn der Stapel nicht leer ist.
Wenn Sie beispielsweise im Stapel der Tabletts das Tablett oben nehmen und nicht ersetzen, wird das zweite Tablett automatisch zum oberen Element (Tablett) dieses Stapels.
Enqueue und Dequeue. Enqueue bedeutet, die Warteschlange hinzuzufügen. Dequeue bedeutet, aus der Warteschlange zu entfernen.
Referenz: Hackerearth, Geeksforgeeks