php排序之冒泡排序

冒泡排序比较简单。作为很多公司面试笔试题常常出现,要求手写该排序算法。双层循环,不断的与后面的比较,如果大于后面的,调换两者顺序即可。

演示效果如图:

代码如下:

<?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);
?>

效果如图:

原文地址:https://www.cnblogs.com/lizhaoyao/p/5924384.html