用PHP语言 实现 希尔排序
时间: 2023-07-23 16:03:59 浏览: 91
下面是 PHP 语言实现希尔排序的代码:
```php
function shellSort($arr)
{
$n = count($arr);
for ($gap = floor($n / 2); $gap > 0; $gap = floor($gap / 2)) {
for ($i = $gap; $i < $n; $i++) {
$j = $i;
while ($j - $gap >= 0 && $arr[$j - $gap] > $arr[$j]) {
$temp = $arr[$j];
$arr[$j] = $arr[$j - $gap];
$arr[$j - $gap] = $temp;
$j -= $gap;
}
}
}
return $arr;
}
```
使用方法:
```php
$arr = array(5, 3, 8, 4, 2);
$result = shellSort($arr);
print_r($result); // 输出:Array ( [0] => 2 [1] => 3 [2] => 4 [3] => 5 [4] => 8 )
```
其中,shellSort 函数接收一个数组作为参数,返回排好序的数组。该函数使用希尔排序算法对数组进行排序。
阅读全文