php 冒泡排序原理

來源:互聯網
上載者:User
$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;
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.