加入收藏 | 设为首页 | 会员中心 | 我要投稿 怀化站长网 (https://www.0745zz.cn/)- 语音技术、云资源管理、物联设备、云计算、决策智能!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-07-24 10:17:11 所属栏目:PHP教程 来源:互联网
导读:在我们刚学编程就知道各种排序算法,现在我们再次看看php 冒泡算法在实际应用中用法吧,有需要的朋友简单的参考一下,代码如下: ?php header(Content-Type: text/html; charset=utf-8); // 简单冒泡算法 0 1 2 3 4 $a = array(5,4,3,2,1); //5 echo 比较54321 b
  在我们刚学编程就知道各种排序算法,现在我们再次看看php 冒泡算法在实际应用中用法吧,有需要的朋友简单的参考一下,代码如下:
 
  <?php
  header('Content-Type: text/html; charset=utf-8');
  //   简单冒泡算法      0 1 2 3 4
  $a = array(5,4,3,2,1);  //5
  echo  "比较54321   <br /><hr />";
  function  mp($a){  //传值 要是数组
          //i=1 i<5 i++
          for($i=0;$i<count($a);$i++){   
                  /* j=3 j<i  j--   
                   * 这里为什么要-2呢  
                   * 因为数组是从0开始的 所以要-1  
                   * 然后 一会要比较后一位 和倒数第二位  所以 要-2
                   * 当然 -1  也可以 只要把 $a[j+1]改成$a[j]  然后把$a[j] 改成$a[j-1] 即可
                   */
                  for ($j=count($a)-2;$j>=$i;$j--){   
                          //判断数组最大的位数  和第二大的相比
                           if ($a[$j+1]<$a[$j]){     
                                   echo  $a[$j+1],'------小于-----',$a[$j],'----------排列前:',fn($a);
                 //如果最大的小于第二大的就换位置
                                   $tmp = $a[$j+1];    
                                     $a[$j+1]=$a[$j];
                                     $a[$j]=$tmp;
                                     echo '------------排列后:',fn($a),'<br><hr>';
                           }
                            
                  }
                   
                   
          }
          return $a;
  }
  echo  fn(mp($a));
   
  function fn($arr){
          foreach ($arr as $value){
                  echo  $value;
          }         
  }
  ?> 

(编辑:怀化站长网)

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

    热点阅读