【php】php排序算法,
转载于:koogua.com
//起泡排序
function bubble_sort($list){
$length = count($list);
for ($i=0; $i<$length; $i++)
{
for ($j=$length-1; $j>$i; $j--)
{
if ($list[$j] < $list[$j-1])
{
$tmp = $list[$j-1];
$list[$j-1] = $list[$j];
$list[$j] = $tmp;
}
}
}
return $list;
}
//选择排序
function select_sort($list)
{
$length = count($list);
for ($i=0; $i<$length; $i++)
{
for ($j=$i+1; $j<$length; $j++)
{
if ($list[$j] < $list[$i])
{
$tmp = $list[$i];
$list[$i] = $list[$j];
$list[$j] = $tmp;
}
}
}
return $list;
}
//插入排序
function insert_sort($list)
{
$length = count($list);
for ($i=1; $i<$length; $i++)
{
$tmp = $list[$i];
for ($j=$i-1; $j>=0 && $tmp < $list[$j]; $j--)
{
$list[$j+1] = $list[$j];
}
$list[$j+1] = $tmp;
}
return $list;
}
//生成无重复数字的数组
function unique_rand_array($min, $max, $num)
{
$count = 0;
$return = array();
while ($count < $num)
{
$tmp = mt_rand($min, $max);
if (!in_array($tmp, $return))
{
$return[] = $tmp;
$count++;
}
}
return $return;
}
PHP之友评论