- 如何实现冒泡排序
- 描述: 冒泡排序 顾名思义就是整个过程就像气泡一样往上升
- 假如 是从小到大的排序
- 1,比较相邻的元素,如果第一个比第二个大,那么就交换这两个元素
- 2.对每个相邻的元素做相同的工作,从第一对开始到最后一对结束。最后的元素应该会是最大的数。
- 然后除了最后一个元素,其它的元素重复以上的步骤。
header("Content-type:text/html;charset=utf-8");
function maopao($arr){
$len = count($arr);
for($i = 1; $i < $len; $i++){ //需要冒泡的轮数
for($k=0;$k<$len-$i;$k++){
if ($arr[$k] > $arr[$k + 1]) {
$tmp = $arr[$k + 1];
$arr[$k + 1] = $arr[$k];
$arr[$k] = $tmp;
}
}
}
return $arr;
}
$arr = array(34, 55, 23, 34, 67);
echo "排序前: ";
foreach ($arr as $k => $val)
{
echo $val.' ';
}
echo "<br>排序后 : ";
$arr = maopao($arr);
foreach ($arr as $k => $val)
{
echo $val.' ';
}