中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

php快速排序算法代碼怎么寫

PHP
小億
84
2023-12-21 19:36:28
欄目: 編程語言

下面是一個簡單的PHP實現快速排序的代碼示例:

function quickSort($array) {
    // 如果數組長度小于等于1,則直接返回
    if (count($array) <= 1) {
        return $array;
    }
    
    // 選擇一個基準值
    $pivot = $array[0];
    
    // 初始化左右子數組
    $left = [];
    $right = [];
    
    // 將比基準值小的元素放在左子數組,比基準值大的元素放在右子數組
    for ($i = 1; $i < count($array); $i++) {
        if ($array[$i] < $pivot) {
            $left[] = $array[$i];
        } else {
            $right[] = $array[$i];
        }
    }
    
    // 遞歸地對左右子數組進行快速排序,并合并結果
    return array_merge(quickSort($left), [$pivot], quickSort($right));
}

// 測試代碼
$array = [5, 2, 9, 1, 7, 6, 3];
$sortedArray = quickSort($array);
print_r($sortedArray);

這段代碼定義了一個名為quickSort的函數,該函數使用遞歸的方式實現了快速排序算法。首先,函數判斷輸入數組的長度是否小于等于1,如果是則直接返回。然后,選擇數組的第一個元素作為基準值。接下來,函數將比基準值小的元素放在左子數組,比基準值大的元素放在右子數組。最后,遞歸地對左右子數組進行快速排序,并將結果合并返回。

在測試代碼中,我們定義了一個包含一些隨機數的數組,然后調用quickSort函數對數組進行排序,并打印排序后的結果。

0
柳州市| 虹口区| 迁安市| 北流市| 新化县| 焉耆| 土默特左旗| 乌拉特中旗| 灌阳县| 夏邑县| 绍兴县| 隆子县| 长岭县| 砀山县| 炉霍县| 呼伦贝尔市| 宁陕县| 朝阳区| 绩溪县| 英德市| 中江县| 沾益县| 石家庄市| 洛宁县| 临武县| 自治县| 定兴县| 额济纳旗| 肇东市| 鄂托克前旗| 孟连| 贺州市| 禹州市| 平邑县| 巴彦淖尔市| 抚州市| 襄汾县| 西和县| 邯郸市| 通江县| 鄂伦春自治旗|