希尔排序

来源:互联网 发布:离散数学教材推荐 知乎 编辑:程序博客网 时间:2024/06/05 15:41
<?php// 希尔排序// 时间复杂度:O(nlog2n)// 希尔(Shell)排序又称为缩小增量排序,它是一种插入排序.// 它是直接插入排序算法的一种威力加强版.function shellSort(&$arr){$size = count($arr);$gap = intval($size/2); //间隔while($gap >= 1) {for($i = $gap; $i < $size; $i++) {$temp = $arr[$i];for($j = $i - $gap; $j >= 0 && $temp < $arr[$j]; $j = $j - $gap)$arr[$j+$gap] = $arr[$j];$arr[$j+$gap] = $temp;}$gap = intval($gap/2); //缩小间隔}}

0 0
原创粉丝点击