php实现直接插入排序

来源:互联网 发布:如何更换网络节点 编辑:程序博客网 时间:2024/05/17 01:46
//插入排序function insert_sort($arr){    $len = count($arr);    for($i = 1;$i < $len;$i++){        for($j = $i - 1;$j >= 0;$j--){            //插入的元素较小,交换位置            if($arr[$i] < $arr[$j]){                $arr[$j+1] = $arr[$j];                $arr[$j] = $arr[$i];            }else{                //前面的数字已经有序,不需要再次比较                break;            }        }    }    return $arr;}//最坏时间复杂度 O(n^2)//最好时间复杂度 O(n)//空间复杂度 O(1)$arr = array(46,32,1,46,35,90,75,462,7,731);print_r(insert_sort($arr));
0 0