您的位置:首页 > 编程语言 > PHP开发

php四种基础排序(基础算法)----①冒泡排序法

2017-05-03 19:00 357 查看

冒泡排序法:

 顾名思义,如冒泡泡一样,每次将数组中最大的数冒出来

  举例: 

    2,3,1.

    第一次先将3冒出来,变成-------->  2,1,3

    第二次再讲2冒出来,变成--------->1,2,3

    至此 排序结束  结果为 1,2,3.

代码如下:

<?php

$arr=array(10,57,12,45,78,32,65,94,14); 

function maopao($arr)



   //求出该数组的长度

  $len=count($arr);

 

  //最外层的for循环 控制需要冒泡的轮数

  //让i=1,是为了内层的for循环中k的条件

  for($i=1;$i<$len;$i++)

  { //该层循环用来控制每轮 冒出一个数 需要比较的次数

     //第一轮时的数据为 $arr[$k=0]和$arr[$k+1=1]时比较,如果前面的数大于后面的数,那么两个数交换位置,大的数就在后面了,前面的数就在前面

    //$k<$len-$i是因为至少内层for循环后返回外层继续循环,$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;

}

//使用了数据格式化,方便清楚的看到数据

echo "<pre/>";
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: