首页技术文章正文

PHP培训之冒泡排序

更新时间:2017-07-26 来源:黑马程序员PHP培训学院 浏览量:

冒泡排序
基本思想:
1501050226885_思想.png

案例说明:

 

<?php

 

     //简单的

     

     $arr=array(0,5,-1);

     //这是一个中间变量

     $temp=0;

     //我们要把数组,从小到大

    

     //外层循环

     for($i=0;$i<count($arr)-1;$i++){

    

              for($j=0;$j<count($arr)-1-$i;$j++){

            

                   //说明前面的数比后面的数大,就要交换

                

                   if($arr[$j]>$arr[$j+1]){

                

                    $temp=$arr[$j];

                    $arr[$j]=$arr[$j+1];

                    $arr[$j+1]=$temp;

            

               }

          }

    

     }

     

     //输出

     print_r($arr);

     

     

?>

 

 

为了更好使用排序,我们将其封装成一个函数:代码如下 :

<?php

 

 

     //简单的

     //现在我们把冒泡法封装成函数,利用以后使用

     function bubbleSort(&$myarr){

          //这是一个中间变量

          $temp=0;

          //我们要把数组,从小到大

          //外层循环

          for($i=0;$i<count($myarr)-1;$i++){

        

           for($j=0;$j<count($myarr)-1-$i;$j++){

        

            //说明前面的数比后面的数大,就要交换

        

                if($myarr[$j]>$myarr[$j+1]){

                

                     $temp=$myarr[$j];

                     $myarr[$j]=$myarr[$j+1];

                     $myarr[$j+1]=$temp;

                

                    }

              }

          }

         

          echo "<br/>函数中的myarr数组";

          print_r($myarr);

     }

     

     

     $arr=array(0,5,-1);

    

     

     //使用函数去排序

     bubbleSort($arr);

    

     //输出

     print_r($arr);  

     

?>

 

☞ 从上面的案例我们可以看出

* 数组默认传递的是值,不是地址

 


本文版权归黑马程序员PHP培训学院所有,欢迎转载,转载请注明作者出处,谢谢!
作者:黑马程序员PHP培训学院
首发:http://php.itheima.com/
分享到:
在线咨询 我要报名
和我们在线交谈!