php 数组排序实例分享(多种排序方式)
程序员文章站
2022-05-06 18:25:06
...
本文介绍下,php实现数组排序的例子,可以实现快速排序、堆排序、希尔排序、插入排序等。有需要的朋友参考下。
php数组排序实例,代码如下: 5){ while($low $temp){ $high --; } $list[$low] = $list[$high]; while($low 0; $i --){ swap($list, $i, 0); heapfy($list, 0, $i - 1); } } //创建堆 function buildheap(&$list){ for($i = (count($list) - 2)/2; $i >= 0; $i --){ heapfy($list, $i, count($list) - 1); } } //维护堆 function heapfy(&$list, $low, $high){ $temp = $list[$low]; for($i = ($low * 2 + 1); $i = 1){ for($i = $code; $i = 0 && $list[$j] > $temp; $j -= $code){ $list[$j + $code] = $list[$j]; $a ++; } $list[$j + $code] = $temp; } } $code = $code/3; } echo $a; } //直接插入排序 function insert(&$list){ $a = 0; for($i = 1; $i $temp; $j --){ $a ++; $list[$j + 1] = $list[$j]; } $list[$j + 1] = $temp; } } echo $a; } //简单选择排序 function select(&$list){ $a = 0; for($i = 0; $i = $i; $j --){ $a ++; if($list[$j] > $list[$j + 1]){ $swap = true; swap($list, $j, $j + 1); } } } echo $a; } //移动或交换函数 function swap(&$list, $i, $j){ $temp = $list[$i]; $list[$i] = $list[$j]; $list[$j] = $temp; } ?> >>> 更多内容,请查看 php数组排序方法大全 |