PHP实现插入排序算法

来源:互联网 发布:无人机推荐 知乎 编辑:程序博客网 时间:2024/06/05 05:54

插入排序insertSort.php

在要排序的一组数中,首先,拿数组的第二个元素和第一元素比较,假如第一个元素大于第二元素,那么就让两者位置互换,接下来,拿数组的第三个元素,分别和第二个,第一个元素比较,假如第三个元素小,那么就互换。依次类推;
// 5,4,1,3,2
// 4,5,1,3,2—1

<?php  $arr=array(5,4,1,3,2); print_r(insertSort($arr));   function insertSort($arr) {    $len=count($arr);     for($i=1; $i<$len; $i++) {        // 取出第二位之后数据        $tmp = $arr[$i];        //内层循环控制,比较并插入        for($j=$i-1;$j>=0;$j--) {            if($tmp < $arr[$j]) {                //发现插入的元素要小,交换位置,将后边的元素与前面的元素互换                $arr[$j+1] = $arr[$j];                $arr[$j] = $tmp;            }        }            // print_r($arr);die;   4,5,1,3,2    }    return $arr;}  ?>
原创粉丝点击