Heim Backend-Entwicklung PHP-Problem PHP-Array-Lernen verwendet den Blasenalgorithmus, um Elemente in aufsteigender Reihenfolge zu sortieren!

PHP-Array-Lernen verwendet den Blasenalgorithmus, um Elemente in aufsteigender Reihenfolge zu sortieren!

Aug 16, 2021 pm 07:51 PM
php 升序排序 数组

Im vorherigen Artikel „PHP-Array-Lernen: Rückgabe aller gemeinsamen Faktoren und des größten gemeinsamen Faktors zwischen zwei gegebenen Zahlen“ haben wir die Verwendung von Array-Methoden eingeführt, um die Summe aller gemeinsamen Faktoren zwischen zwei gegebenen ganzen Zahlen a und b zurückzugeben Common-Factor-Methode. Dieses Mal werden wir PHP-Arrays untersuchen und vorstellen, wie man mit PHP die Blasensortierung implementiert und wie man den Blasenalgorithmus verwendet, um Array-Elemente in aufsteigender Reihenfolge zu sortieren.

Lassen Sie uns zunächst verstehen, Was ist der Blasenalgorithmus (Blasensortierung)?

Blasensortierung (Bubble Sort) liegt daran, dass die kleineren Elemente durch Austausch langsam an die Spitze der Sequenz „schweben“ (in aufsteigender oder absteigender Reihenfolge angeordnet), genau wie die Kohlendioxidblasen in kohlensäurehaltigen Getränken schließlich an die Spitze der Sequenz „schweben“. oben, daher der Name „Blasensortierung“.

Idee:

  • Vergleichen Sie zwei benachbarte Elemente. Wenn die Bedingung erfüllt ist (das erste ist größer als das zweite oder das erste ist kleiner als das zweite), vertauschen Sie sie, sonst passiert nichts.

  • Vergleichen Sie dann die nächsten beiden benachbarten Elemente und tauschen Sie sie dann aus, wenn die Bedingungen erfüllt sind, andernfalls bleiben sie unverändert.

  • Machen Sie einfach dasselbe für jedes Paar benachbarter Elemente, vom ersten Paar am Anfang bis zum letzten Paar am Ende. Das letzte Element sollte die größte (kleinste) Zahl sein.

  • Setzen Sie den Schleifenvorgang der Reihe nach fort, und das letzte Element wird unten fixiert.

Wir verwenden den Blasenalgorithmus, um die Array-Elemente in aufsteigender Reihenfolge zu sortieren:

Es gibt ein solches Array:

$arr = array('23','4','0','3','2','24','20');
Nach dem Login kopieren

Das Array hat 7 Elemente, da eine aufsteigende Sortierung implementiert ist, also eine Sortierung von klein nach groß , also sind die Ausführungsschritte:

Die erste Runde der Schleife:

  • Das Verhältnis des ersten Elements 23 und des zweiten Elements 4, da 23 größer als 4 ist, wird also eine Austauschoperation ausgeführt

  • The zweites Element (zu diesem Zeitpunkt 23) und das dritte Element 0 vergleichen, da 23 größer als 0 ist, also eine Austauschoperation durchführen --- 23 wird zum dritten Element

  • Das dritte Element (zu diesem Zeitpunkt 23) und das Das vierte Element 3 ist immer noch größer als das andere. Führen Sie die Austauschoperation durch. 23 wird zum vierten Element. Das vierte Element (zu diesem Zeitpunkt 23) ist immer noch größer als das fünfte Element 2. Führen Sie die Austauschoperation aus. -23 wird zum fünften Element

  • Das Verhältnis des fünften Elements (zu diesem Zeitpunkt 23) zum sechsten Element beträgt 24, da 23 kleiner als 24 ist und daher keine Austauschoperation durchgeführt wird – das sechste Element ist immer noch 24

  • Das sechste Element (zu diesem Zeitpunkt ist 24) wird mit dem siebten Element 20 verglichen. Da 24 größer als 200 ist, führen Sie eine Austauschoperation durch --- 24 wird zum siebten Element.

  • Nach einer zyklischen Vergleichsrunde wird das Die größte Zahl sinkt zu Boden. Nach und nach tauchen kleine Zahlen auf.

  • Zu diesem Zeitpunkt sind die Array-Elemente: 4, 0, 3, 2, 23, 20, 24

Die zweite Runde der Schleife:

Das Verhältnis des ersten Elements 4 und des zweiten Elements 0, weil 4 ist größer als 0. Führen Sie daher die Austauschoperation aus --- 4 wird zum zweiten Element

  • Das zweite Element (das zu diesem Zeitpunkt 4 ist) wird mit dem dritten Element 3 verglichen, da 4 größer als 3 ist. Führen Sie also die Austauschoperation aus: 4 wird zum dritten Element. Das dritte Element (zu diesem Zeitpunkt 4) ist immer noch größer als das vierte Element. 2. Führen Sie eine Austauschoperation aus: 4 wird zum vierten Element

  • das vierte Das Verhältnis des Elements (zu diesem Zeitpunkt 4) und des fünften Elements beträgt 23, da 4 kleiner als 23 ist, sodass keine Austauschoperation durchgeführt wird --- das fünfte Element ist immer noch 23

  • Das fünfte Element (zu diesem Zeitpunkt 23) und das sechste Element Das Verhältnis des sechsten Elements (zu diesem Zeitpunkt 23) zum siebten Element beträgt 24, was weniger als 20 ist, daher wird kein Austausch durchgeführt – das siebte Element ist immer noch 24

  • Zu diesem Zeitpunkt sind die Array-Elemente: 0, 3, 2, 4, 20, 23, 24

    ...
  • Und so weiter ist das letzte Array-Element: 0, 2, 3, 4 , 20, 23, 24

    Werfen wir einen Blick auf die Implementierungsmethode:
  •  $arr[$j+1]) {
     
    				$data      = $arr[$i]; 
    				$arr[$i]   = $arr[$j+1];
    				$arr[$j+1] = $data; 
    			}
    		}
    	}
     
    	return $arr;
    }
    echo "
    ";
    print_r(BubbleSort($arr));
    Nach dem Login kopieren
  • Ausgabeergebnis:

  • Okay, das ist alles. Wenn Sie noch etwas wissen möchten, können Sie hier klicken. → →

    php-Video-Tutorial

    Abschließend empfehle ich ein kostenloses Video-Tutorial zu PHP-Arrays:

    PHP-Funktions-Array-Array-Funktions-Video-Erklärung

    , kommen Sie und lernen Sie!

    Das obige ist der detaillierte Inhalt vonPHP-Array-Lernen verwendet den Blasenalgorithmus, um Elemente in aufsteigender Reihenfolge zu sortieren!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CakePHP-Projektkonfiguration CakePHP-Projektkonfiguration Sep 10, 2024 pm 05:25 PM

In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP-Routing CakePHP-Routing Sep 10, 2024 pm 05:25 PM

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

CakePHP erstellt Validatoren CakePHP erstellt Validatoren Sep 10, 2024 pm 05:26 PM

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

See all articles