gpt4 book ai didi

php - 冒泡排序数组,如何使这个 php 冒泡排序代码更好或更有效?

转载 作者:行者123 更新时间:2023-12-02 08:52:54 26 4
gpt4 key购买 nike

如何使这个 php 冒泡排序代码更好或更有效?

// bubble sort for $AR 
for($i = count($AR)-1 ; $i <= 1; $i--)
for($j = 0; $j < $i; $j++) {
if($AR[$j] > $AR[$j+1]) {
$t = $AR[$j];
$AR[$j] = $AR[$j+1];
$AR[$j+1] = $t;
} //if
} //for j

最佳答案

算法就是算法,如果你进行一些修改并获得更好的性能,你将不再使用冒泡排序算法,因为它已经改变了。

如果你想提高性能,你需要改变算法,Quick Sort通常被认为是最好的排序。以php中的实现为例:

// QuickSort Algorithm function
function quickSort(array $array) {
if (count($array) == 0) {
return $array;
}
$pivot = $array[0];
$left = $right = array();
for($i = 1; $i < count($array); $i ++) {
if ($array[$i] < $pivot) {
$left[] = $array[$i];
} else {
$right[] = $array[$i];
}
}
return array_merge(quickSort($left), array(
$pivot
), quickSort($right));
}

当然,这始终取决于具体情况,如果您对其进行优化,您的代码将基于该算法,但不会使气泡算法更好或更有效

检查this post ,其中对 php 中几乎所有类型的排序都有详细记录。

希望这对您有帮助!

关于php - 冒泡排序数组,如何使这个 php 冒泡排序代码更好或更有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37165951/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com