2025年云南特岗教师学科精讲课程

php实现插入排序
2015-04-03来源:易贤网

2025特岗教师学科精讲课,试看满意购买,配套纸质资料免费包邮!>>

本文给大家分享的是使用php实现插入排序的方法,十分的简单实用,有需要的小伙伴可以参考下。

<?php

/**

* 插入排序

* @param Array $a 无序集合

* @return Array 有序集合

*/

function insertSort($a) {

$temp;

$i;

$j;

$size_a = count($a);

# 从第二个元素开始

for ($i = 1; $i < $size_a; $i++) {

if ($a[$i] < $a[$i-1]) {

$j = $i; # 保存当前元素的位置

$temp = $a[$i]; # 当前元素的值

# 比较左边的元素,如果找到比自己更小的,向右移动元素,否则插入元素到当前位置

while($j>0 && $temp<$a[$j-1]) {

$a[$j] = $a[$j-1];

$j--;

}

# 插入元素

$a[$j] = $temp;

}

}

return $a;

}

/**

* 获取随机数

* @param Integer $size 数量

* @return Integer

*/

function randomNumber($size = 10) {

$rand = array();

srand(time(NULL));

for ($i = 0; $i < $size; $i++) {

array_push($rand, mt_rand(0,1000));

}

return $rand;

}

$a = randomNumber();

echo sprintf("Unsorted list %sn", implode(" ", $a));

echo sprintf("Sorted list %sn", implode(" ", insertSort($a)));

以上就是本文所述的全部内容了,希望大家能够喜欢。

更多信息请查看IT技术专栏

2025年云南成考学历提升预报名

2026公务员·事业单位培训课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
推荐信息