Heim >Backend-Entwicklung >PHP-Tutorial >Prinzip und Anwendung der Einfügesortiermethode in PHP
Dieser Artikel stellt hauptsächlich die PHP-Einfügungssortierungsmethode zur Implementierung der Array-Sortierung vor. Er analysiert die Prinzipien und spezifischen Implementierungstechniken der Einfügungssortierungsmethode. Freunde in Not können sich auf diesen Artikel beziehen
Das Beispiel beschreibt, wie die Array-Sortierung mithilfe der PHP-Einfügungssortierung implementiert wird. Die spezifische Analyse lautet wie folgt: Die Grundidee der Einfügesortiermethode: Auch anhand eines Falls dargestellt, immer noch mit $arr = array(2,6,3,9) , sortiert von groß nach klein . Implementierungsprinzip: Angenommen (nicht tatsächlich erstellt), dass es ein geordnetes Array $arr = array(2) gibt, verwenden Sie $arr[1]=6, um es zu vergleichen, wenn 6>2, um $arr [0] wird zurück an die Position $arr[1] verschoben und 6 wird an der Position $arr[0] eingefügt. Dann wird $arr[2]=3 mit $arr[1]=2, 3>2 verglichen, dann bewegt sich $arr[1]=2 weiter zur Position $arr[2], dem ursprünglichen $arr[3 ]=3 Fügen Sie es an der Position $arr[1] ein und fügen Sie dann 9 an der Schlussposition ein. Das Endergebnis ist (9,6,3,2). Eine Sortierung kann auch nach count($arr)-1 großen Schleifen erreicht werden. Codemusteranalyse: Die erste große Schleife: $[1] vs. $[0];Die zweite große Schleife: $[2] vs. $[1 ] Verhältnis, das Verhältnis von $[1] und $[0];
Der dritte große Zyklus: das Verhältnis von $[3] und $[2], das Verhältnis von $[2] und $[1], das Verhältnis von $[1] und $[0]-Verhältnis;
<?php function insertSort(&$arr){ for($i=1;$i<count($arr);$i++){ //$insertVal是准备插入的数 for($j=$i;$j>0;$j--){ if($arr[$j]>$arr[$j-1]){ $insertVal = $arr[$j]; $arr[$j] = $arr[$j-1]; $arr[$j-1] = $insertVal; } } } } $myarr = array(2,6,3,9); insertSort($myarr); echo "<pre class="brush:php;toolbar:false">"; print_r($myarr); ?>Code-Implementierungsanalyse zu erleichtern: Erste große Schleife: $i=1 array (2,6,3,9)
$j=1 Führe das Verhältnis von 6 und 2 aus: $arr[1]=2;$arr[0]=6 , get (6,2 ,3,9)
$j=2 Ausführen 3 und 2 Verhältnis: Werden $arr[2]=2, $arr[1]=3, erhalten (6,3,2,9)
$j--,$j=1 Führen Sie $arr[1] aus und $arr[ 0] Verhältnis: Die Bedingung ist nicht erfüllt
$j=3 Führen Sie das Verhältnis 9 und 2 aus: Werden Sie $arr[3]=2,$arr[2]=9, erhalten Sie (6,3,9,2)
$j--,$j=2 Führen Sie das Verhältnis 9 aus und 3: werde $ arr[2]=3,$arr[1]=9, erhalte (6,9,3,2)
$j--,$j=1 Führe das Verhältnis von 9 und 6 aus: werde $arr[1] =5,$arr[0]=9, erhalte (9,6,3,2)
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels Ich hoffe, es kann jedem beim Lernen helfen.
Verwandte Empfehlungen:So senden Sie E-Mails über das PHP-Operationsformular
PHP verwendet das Verifizierungsformular, um zu erkennen, ob das Feld leer ist
So fügen Sie in PHP jedem Absatz Leerzeichen hinzu
Das obige ist der detaillierte Inhalt vonPrinzip und Anwendung der Einfügesortiermethode in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!