So implementieren Sie den Auswahlsortierungsalgorithmus mit PHP
Auswahlsortierung ist ein einfacher und intuitiver Sortieralgorithmus. Seine Grundidee besteht darin, in jedem Durchgang das kleinste (oder größte) Element aus den zu sortierenden Datenelementen auszuwählen und es im Ergebnis zu speichern Die Startposition der Sequenz, bis alle zu sortierenden Datenelemente angeordnet sind. Im Folgenden implementieren wir den Auswahlsortierungsalgorithmus durch PHP-Code und erläutern ihn im Detail.
Werfen wir zunächst einen Blick auf die Implementierungsschritte des Auswahlsortierungsalgorithmus:
Das Folgende ist ein Codebeispiel, bei dem PHP verwendet wird, um den Auswahlsortierungsalgorithmus zu implementieren:
function selectionSort($arr) { $len = count($arr); for($i = 0; $i < $len - 1; $i++) { $minIndex = $i; for($j = $i + 1; $j < $len; $j++) { if($arr[$j] < $arr[$minIndex]) { $minIndex = $j; } } // Swap the minimum value with the current position $temp = $arr[$minIndex]; $arr[$minIndex] = $arr[$i]; $arr[$i] = $temp; } return $arr; } // Test the selectionSort function $testArray = [64, 25, 12, 22, 11]; echo "Before sorting: "; print_r($testArray); echo "After sorting: "; print_r(selectionSort($testArray));
Führen Sie den obigen Code aus. Das Ausgabeergebnis lautet:
Before sorting: Array ( [0] => 64 [1] => 25 [2] => 12 [3] => 22 [4] => 11 ) After sorting: Array ( [0] => 11 [1] => 12 [2] => 22 [3] => 25 [4] => 64 )
Dies ist das Ergebnis der Sortierung des Arrays durch den Auswahlsortierungsalgorithmus. Als nächstes erklären wir den spezifischen Implementierungsprozess des Codes.
Im Code definieren wir eine Funktion namens selectionSort
, die ein zu sortierendes Array als Parameter akzeptiert und das sortierte Array zurückgibt. selectionSort
的函数,它接受一个待排序的数组作为参数,并返回排序后的数组。
首先,我们使用count
函数获取到数组的长度,并将其赋值给变量$len
。然后,我们使用两个嵌套的for
循环来遍历整个数组。
在外部的for
循环中,我们定义了一个变量$minIndex
用来保存当前最小值的索引,默认为当前的循环变量$i
。在内部的for
循环中,我们通过比较当前元素和最小值的大小来更新最小值的索引。
当内部的for
循环结束后,我们将当前最小值与当前的位置进行交换。通过使用一个临时变量$temp
count
, um die Länge des Arrays zu ermitteln und sie der Variablen $len
zuzuweisen. Anschließend verwenden wir zwei verschachtelte for
-Schleifen, um das gesamte Array zu durchlaufen. In der äußeren for
-Schleife definieren wir eine Variable $minIndex
, um den Index des aktuellen Minimalwerts zu speichern, der standardmäßig auf die aktuelle Schleifenvariable $i gesetzt ist
. In der inneren for
-Schleife aktualisieren wir den Index des Mindestwerts, indem wir die Größe des aktuellen Elements und den Mindestwert vergleichen. Wenn die innere for
-Schleife endet, tauschen wir den aktuellen Minimalwert mit der aktuellen Position aus. Tauschen Sie die Werte zweier Elemente aus, indem Sie eine temporäre Variable $temp
verwenden. Schließlich geben wir das sortierte Array zurück. 🎜🎜Die zeitliche Komplexität des Auswahlsortierungsalgorithmus beträgt O(n^2), wobei n die Länge des zu sortierenden Arrays ist. Dies liegt daran, dass bei jedem Durchlauf der Mindestwert unter den verbleibenden Elementen ermittelt und eine Austauschoperation durchgeführt werden muss. Unabhängig vom Anfangszustand des Arrays müssen n-1 Durchläufe durchgeführt werden. 🎜🎜Ich hoffe, dass Sie durch die Codebeispiele und Erklärungen in diesem Artikel den Implementierungsprozess des Auswahlsortierungsalgorithmus besser verstehen und ihn in der tatsächlichen Entwicklung flexibel verwenden können. 🎜Das obige ist der detaillierte Inhalt vonSo implementieren Sie einen Auswahlsortierungsalgorithmus mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!