编程 内容:1 问题已关闭

已采纳 php冒泡排序求解答

  • 查看作者
  • 打赏作者
  • 赠送礼物
  • 补充以下冒泡排序:

    <?php
    $disorder = array(7, 3, 4, 9, -2, 5);
    for() {
    for(){
    if (__} }
    $temp = $disorder[j];
    $disorder[j] = $disorder[j + 1];
    $disorder[j + 1] = $temp;
    }
    }
    }
    }
    print_r($disorder);
    }


      思路: 从某一方向开始,依次两两比较,把小的放左边,大的放右边(俗称沉石法)


      <?php
      $disorder = array(7, 3, 4, 9, -2, 5);
      $len = sizeof($disorder);
      for ($i = 0; $i < $len; $i++) {
      for ($j = 0; $j < $len - 1 - $i; $j++) {
      if ($disorder[$j] > $disorder[$j + 1]) { // 相邻元素两两比较
      $temp = $disorder[$j+1]; // 元素交换
      $disorder[$j+1] = $disorder[$j];
      $disorder[$j] = $temp;
      }
      }
      }
      print_r($disorder);

      运行结果:Array ( [0] =˃ -2 [1] =˃ 3 [2] =˃ 4 [3] =˃ 5 [4] =˃ 7 [5] =˃ 9 )

      他太懒了,什么都没有写

    请登录之后再进行评论

    登录