加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

简单的一个php 冒泡排序算法

发布时间:2020-12-13 20:32:40 所属栏目:PHP教程 来源:网络整理
导读:在我们刚学编程就知道各种排序算法,现在我们再次看看php 冒泡算法在实际应用中用法吧,有需要的朋友简单的参考一下,代码如下: ?php header( Content-Type:text/html;charset=utf-8 ); //简单冒泡算法01234 $a = array (5,4,3,2,1); //5 echo 比较54321br/hr/

在我们刚学编程就知道各种排序算法,现在我们再次看看php 冒泡算法在实际应用中用法吧,有需要的朋友简单的参考一下,代码如下:

  1. <?php 
  2. header('Content-Type: text/html; charset=utf-8'); 
  3. //   简单冒泡算法      0 1 2 3 4 
  4. $a = array(5,4,3,2,1);  //5 
  5. echo  "比较54321   <br /><hr />"
  6. function  mp($a){  //传值 要是数组 
  7.         //i=1 i<5 i++ 
  8.         for($i=0;$i<count($a);$i++){   
  9.                 /* j=3 j<i  j--   
  10.                  * 这里为什么要-2呢  
  11.                  * 因为数组是从0开始的 所以要-1  
  12.                  * 然后 一会要比较后一位 和倒数第二位  所以 要-2 
  13.                  * 当然 -1  也可以 只要把 $a[j+1]改成$a[j]  然后把$a[j] 改成$a[j-1] 即可 
  14.                  */ 
  15.                 for ($j=count($a)-2;$j>=$i;$j--){   
  16.                         //判断数组最大的位数  和第二大的相比 
  17.                          if ($a[$j+1]<$a[$j]){     
  18.                                  echo  $a[$j+1],'------小于-----',$a[$j],'----------排列前:',fn($a); 
  19.                //如果最大的小于第二大的就换位置 
  20.                                  $tmp = $a[$j+1];    
  21.                                    $a[$j+1]=$a[$j]; 
  22.                                    $a[$j]=$tmp
  23.                                    echo '------------排列后:',fn($a),'<br><hr>'
  24.                          } 
  25.                           
  26.                 } 
  27.                  
  28.                  
  29.         } 
  30.         return $a
  31. echo  fn(mp($a)); 
  32.  
  33. function fn($arr){ 
  34.         foreach ($arr as $value){ 
  35.                 echo  $value
  36.         }         
  37. ?> 

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读