冒泡排序比较简单。作为很多公司面试笔试题常常出现,要求手写该排序算法。双层循环,不断的与后面的比较,如果大于后面的,调换两者顺序即可。
演示效果如图:
代码如下:
<?php
function bubbleSort($array=array())
{
$length=count($array);//获取数组长度
for ($i=0; $i < $length ; $i++)
{
#循环数组
for ($j=$i+1; $j < $length ; $j++)
{
# 本身与本身后面的人进行比较
if($array[$i]>$array[$j])
{
//顺序不对 要调换 实现冒泡
//两数换值
$tmp=$array[$i];//将第一个值给临时变量
$array[$i]=$array[$j];//把j的值给i
$array[$j]=$tmp;//把tmp给j
}
}
}
return $array;//返回数组
}
?>
调用代码如下:
<?php
$array=array(10,9,8,7,6,5,4,3,2,1);
$result=bubbleSort($array);
var_dump($result);
?>
效果如图: