1. 云栖社区>
  2. PHP教程>
  3. 正文

PHP插入排序算法实现 (一维数组)

作者:用户 来源:互联网 时间:2017-12-01 20:17:10

php算法数组排序实现插入一维

PHP插入排序算法实现 (一维数组) - 摘要: 本文讲的是PHP插入排序算法实现 (一维数组), 遍历数组,每次把一个待排序的元素,插入到前面已经排好序的数列中的恰当位置,使数列依然有序。知道待排序的元素全部插入完为止。就得到了一个排序号的数组。 $array = [34,23,4,7,13,43,6,12,56,2]; $to

遍历数组,每次把一个待排序的元素,插入到前面已经排好序的数列中的恰当位置,使数列依然有序。知道待排序的元素全部插入完为止。就得到了一个排序号的数组。



$array = [34,23,4,7,13,43,6,12,56,2];



$toSort == 1时: [23, 34 , 4 , 7 , 13 , 43 , 6 , 12 , 56 , 2] $toSort == 2时: [4 , 23 , 34 , 7 , 13 , 43 , 6 , 12 , 56 , 2] $toSort == 3时: [4 , 7 , 23 , 34 , 13 , 43 , 6 , 12 , 56 , 2] $toSort == 4时: [4 , 7 , 13 , 23 , 34 , 43 , 6 , 12 , 56 , 2] $toSort == 5时: [4 , 7 , 13 , 23 , 34 , 43 , 6 , 12 , 56 , 2] $toSort == 6时: [4 , 6 , 7 , 13 , 23 , 34 , 43 , 12 , 56 , 2] $toSort == 7时: [4 , 6 , 7 , 12 , 13 , 23 , 34 , 43 , 56 , 2] $toSort == 8时: [4 , 6 , 7 , 12 , 13 , 23 , 34 , 43 , 56 , 2] $toSort == 9时: [2 , 4 , 6 , 7 , 12 , 13 , 23 , 34 , 43 , 56]



$count = count($array);


for($toSort = 1;$toSort < $count;$toSort++){//当前要插入的值$insert = $array[$toSort];for($sorted = $toSort - 1;$sorted >= 0;$sorted--){//待插入元素比已排好序的要小,换位if($insert < $array[$sorted]){$array[$sorted + 1] = $array[$sorted];$array[$sorted] = $insert;//待插入前面的已经是排好序的,就不用比较换位了}else{break;}} }


print_r($array);



输出


Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 7 [4] => 12 [5] => 13 [6] => 23 [7] => 34 [8] => 43 [9] => 56 )



以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php , 算法 , 数组 , 排序 , 实现 , 插入 一维 ,以便于您获取更多的相关知识。