zoukankan      html  css  js  c++  java
  • php 冒泡排序原理

    $start = microtime(true);
       $popArr = array(6,3,23,1,5,100,399,99,66);
       echo '6,3,23,1,5,100,399,99,66';
       $len = count($popArr);
       for ($j=0; $j<$len; $j++)
       {
           for ($i=$len-1; $i>$j; $i--)
           {
               if ($popArr[$i] < $popArr[$i-1])
               {
                   $x = $popArr[$i];
                   $popArr[$i] = $popArr[$i-1];
                   $popArr[$i-1] = $x;
               }
           }
       }
       /*
       j=0 i=8 99和66互换了     array(6,3,23,1,5,100,399,66,99);
           i=7 399和66互换了  array(6,3,23,1,5,100,66,399,99);
           i=6 100和66互换了  array(6,3,23,1,5,66,100,399,99);
           i=5   没变化
           i=4   没变化
           i=3 23和1互换了       array(6,3,1,23,5,66,100,399,99);
           i=2 3和1互换了          array(6,1,3,23,5,66,100,399,99);
           i=1 6和1互换了          array(1,6,3,23,5,66,100,399,99);
           
       j=1 i=8 399和99互换了  array(1,6,3,23,5,66,100,99,399);
           i=7 100和99互换了  array(1,6,3,23,5,66,99,100,399);
           i=6   没变化                  array(1,6,3,23,5,66,99,100,399);
           i=5   没变化                  array(1,6,3,23,5,66,99,100,399);
           i=4 23和5互换了       array(1,6,3,5,23,66,99,100,399);
           i=3   没变化                  array(1,6,3,5,23,66,99,100,399);
           i=2 6和3互换了          array(1,3,6,5,23,66,99,100,399);
           
       j=2 i=8   没变化                  array(1,3,6,5,23,66,99,100,399);
           i=7   没变化                  array(1,3,6,5,23,66,99,100,399);
           i=6   没变化                  array(1,3,6,5,23,66,99,100,399);
           i=5   没变化                  array(1,3,6,5,23,66,99,100,399);
           i=4   没变化                  array(1,3,6,5,23,66,99,100,399);
           i=3 6和5互换了          array(1,3,5,6,23,66,99,100,399);
           
       j=3 i=8   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=7   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=6   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=5   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=4   没变化                  array(1,3,5,6,23,66,99,100,399);
           
       j=4 i=8   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=7   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=6   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=5   没变化                  array(1,3,5,6,23,66,99,100,399);
           
       j=5 i=8   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=7   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=6   没变化                  array(1,3,5,6,23,66,99,100,399);
           
       j=6 i=8   没变化                  array(1,3,5,6,23,66,99,100,399);
           i=7   没变化                  array(1,3,5,6,23,66,99,100,399);
           
       j=7 i=8   没变化                  array(1,3,5,6,23,66,99,100,399);
       */
       echo '<pre>';
       print_r($popArr);
       echo microtime(true) - $start;
       die;

  • 相关阅读:
    原型模式
    创造者模式
    抽象工厂模式
    工厂方法模式
    简单工厂模式
    HiveQl 基本查询
    使用VMware安装linux虚拟机以及相关配置
    大数据测试
    使用Pycharm创建一个Django项目
    LoadRunner监控window系统各项指标详解
  • 原文地址:https://www.cnblogs.com/bluealine/p/7985499.html
Copyright © 2011-2022 走看看