PHPクイックソートコード

不言
不言オリジナル
2018-07-06 11:00:241709ブラウズ

この記事では、主に PHP でのクイック ソートのコードを紹介しますが、これは一定の参考値があります。ここで共有します。必要な友人は参考にしてください。

1. 原理の紹介

実際には非常に簡単です
配列[6, 1, 2, 7, 9, 3, 4, 5, 10, 8]
a. 最初の6を見つけます(両方とも機能します)
b. 6 より小さいものと 6 より大きいものをそれぞれ配列に分離します
c. b 演算で 2 つの配列を取得し、ab 演算を繰り返し、最後に配列をマージします

2. コード

/**
 * 快速排序
 */
function quick_sort($arr)
{
    $length = count($arr);
    if ($length <= 1) {
        return $arr;
    }
    $left = $right = [];
    for ($i = 1; $i < $length; $i++) {
        if ($arr[$i] < $arr[0]) {
            $left[] = $arr[$i];
        } else {
            $right[] = $arr[$i];
        }

    }
    //递归调用
    $left = quick_sort($left);
    $right = quick_sort($right);
    return array_merge($left, [$arr[0]], $right);
}
$arr_data = [6, 1, 2, 7, 9, 3, 4, 5, 10, 8];
print_r(quick_sort($arr_data));

以上がこの記事の全内容です。皆様の学習に少しでもお役に立てれば幸いです。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

PHP 変数のスコープ、グローバル、静的などのキーワード

一般的に使用されるヘッダーPHP ヘッダー定義で

#

以上がPHPクイックソートコードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。