Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für die schnelle Sortiermethode PHP Quicksort

Beispiel für die schnelle Sortiermethode PHP Quicksort

小云云
小云云Original
2018-03-10 09:18:281415Durchsuche

Dieser Artikel stellt Ihnen hauptsächlich Beispiele der Quicksort-Methode in PHP vor, in der Hoffnung, Ihnen dabei zu helfen, die Verwendung von Quicksort besser zu verstehen.

<?phpfunction quickSort($arr){
    //先判断是否需要继续进行
    $length = count($arr);    if ($length <= 1) {        return $arr;
    }    //选择第一个元素作为基准
    $base_num = $arr[0];    //遍历除了标尺外的所有元素,按照大小关系放入两个数组内

    //初始化两个数组
    $left_array = [];   //小于基准的
    $right_array = [];  //大于基准的

    for ($i = 1; $i < $length; $i++) {        if ($base_num > $arr[$i])            //放入左边数组
            $left_array[] = $arr[$i];        else
            //放入右边
            $right_array[] = $arr[$i];

    }    //再分别对左边和右边的数组进行相同的排序处理方式递归调用这个函数
    $left_array = quickSort($left_array);    $right_array = quickSort($right_array);    //合并
    return array_merge($left_array, array($base_num), $right_array);
}$arr1 = [1, 4, 5, 8, 2, 12, 23, 17];$arr2 = quickSort($arr1);

var_dump($arr2);

Verwandte Empfehlungen:

PHP-Bubbling, Auswahl, Einfügung und schnelles Teilen von Sortieralgorithmen

Js schnelle Sortierung Methodenbeispiel

Beispiel einer PHP-Methode zur Implementierung einer schnellen Sortierung

Das obige ist der detaillierte Inhalt vonBeispiel für die schnelle Sortiermethode PHP Quicksort. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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