php排序算法-冒泡排序

冒泡排序:

数据少时可以用,简单,稳定
具体实现:

   /**
    * @param $array
    * @return mixed
    */
  public function sort($array)
  {
      $len = count($array);
      if ($len === 1) {
          return $array;
      }

      // 循环次数,第0个数比较 $len - 1次,第1个数比较 $len -1 -1 次,第2个数比较 $len - 1 — 1 - 1
      // 每次比较一个数后,下次就少比较一次
      for ($i = 0; $i < $len - 1; $i++) {
          // 从第0个开始比较,和后一个比较
          for ($j = 0; $j < $len - 1 - $i; $j++) {
              if ($array[$j] > $array[$j + 1]) {
                  $tmp           = $array[$j + 1];
                  $array[$j + 1] = $array[$j];
                  $array[$j]     = $tmp;
              }
          }
      }

      return $array;
  }
posted @ 2021-07-11 15:59  alisleepy  阅读(121)  评论(0编辑  收藏  举报