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

PHP对一组数开展重新排列冒泡算法

发布时间:2022-06-29 22:57:08 所属栏目:PHP教程 来源:互联网
导读:如何对已知数组 $arr = [24,69,80,57,13] 进行按重新顺序排序。 思路: 1、我们需要对数组中每两个,前后进行比较,如果前面小于后面的,就进行兑换位置; 2、因为是两个一比较,所以我们需要比较count($arr) - 1 轮,因为每一轮比较下来,都可以确定一个最
  如何对已知数组 $arr = [24,69,80,57,13] 进行按重新顺序排序。
 
  思路:
 
  1、我们需要对数组中每两个,前后进行比较,如果前面小于后面的,就进行兑换位置;
 
  2、因为是两个一比较,所以我们需要比较count($arr) - 1 轮,因为每一轮比较下来,都可以确定一个最大的值,所以每一轮就会减少一次。
 
  图示:
 
  PHP对一组数进行重新排列(冒泡算法)
 
  代码:
 
  //定义数组
  
  $arr = [24,69,80,57,13];
  
  //定义一个临时变量
  
  $temp = 0;
  
  //第一层循环,外层循环,循环count($arr) - 1 次(可以遍历到每一个数组值)
  
  for ($i1=0; $i1 < count($arr); $i1++) {  
  
      //第二层循环,内层循环,每一次外层循环内,再次循环,循环次数依次减少一次(每次循环结束,可以获取到一个最大值)
  
      for ($i=0; $i < count($arr) - 1; $i++) {
  
          //判断条件,满足即交换值  
  
          if($arr[$i] > $arr[$i + 1]){
  
              //临时存储满足条件的变量值
  
              $temp = $arr[$i];
  
              //重新赋值
  
              $arr[$i] = $arr[$i + 1];
  
              //重新赋值
  
              $arr[$i + 1] = $temp;
  
          }
  
      }
  
  }
  
  //输出排列后的数组
  
  echo '<pre>';
  
  var_dump($arr);。

 
 

(编辑:航空爱好网)

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