• 冒泡排序的PHP实现 Bubble Sort


    冒泡排序Bubble Sort的PHP实现。代码中函数说明:

    • out_arr,用于将数组输出成一个字符串,以便查看
    • bubblesort,第一种实现方案,从后往前依次选出需要的值,这里是较大的
    • bubblesort2,第二种方案,从前往后一次选中需要的值,这里是最小的
    • range,产生一个1到20的数组
    • shuffle,打乱数组
      01
      function out_arr($arr) {
      02
          return implode(', ', $arr).'
      03
      ';
      04
      }
      05
       
      06
      function bubblesort($arr) {
      07
          for ($i = 0; $i < count($arr) - 1; $i++ ) {
      08
              for($j = 0; $j < count($arr) - $i - 1; $j++ ) {
      09
                  if( $arr[$j] > $arr[$j+1] ) {
      10
                      $tmp = $arr[$j];
      11
                      $arr[$j] = $arr[$j + 1];
      12
                      $arr[$j + 1] = $tmp;
      13
                  }
      14
              }
      15
              echo sprintf('%3d', $i).' : '.out_arr($arr);
      16
          }
      17
      }
      18
       
      19
       
      20
      function bubblesort2($array) {
      21
          $count = count($array);
      22
          for($i=0; $i<$count; $i++) {
      23
              for($j=$count-1; $j>$i; $j--) {
      24
                  if ($array[$j] < $array[$j-1]) {
      25
                      $tmp = $array[$j];
      26
                      $array[$j] = $array[$j-1];
      27
                      $array[$j-1] = $tmp;
      28
                  }
      29
              }
      30
              echo sprintf('%3d', $i).' : '.out_arr($array);
      31
          }
      32
          return $array;
      33
      }
      34
      echo '<pre>';
      35
      $arr = range(1, 20);
      36
      shuffle($arr);
      37
      echo 'ORG : '.out_arr($arr);
      38
      bubblesort2($arr);
      39
      echo '</pre>';
      

        

    冒泡排序Bubble Sort的PHP实现。代码中函数说明:

    • out_arr,用于将数组输出成一个字符串,以便查看
    • bubblesort,第一种实现方案,从后往前依次选出需要的值,这里是较大的
    • bubblesort2,第二种方案,从前往后一次选中需要的值,这里是最小的
    • range,产生一个1到20的数组
    • shuffle,打乱数组
    01 function out_arr($arr) {
    02     return implode(', '$arr).'
    03 ';
    04 }
    05  
    06 function bubblesort($arr) {
    07     for ($i = 0; $i count($arr) - 1; $i++ ) {
    08         for($j = 0; $j count($arr) - $i - 1; $j++ ) {
    09             if$arr[$j] > $arr[$j+1] ) {
    10                 $tmp $arr[$j];
    11                 $arr[$j] = $arr[$j + 1];
    12                 $arr[$j + 1] = $tmp;
    13             }
    14         }
    15         echo sprintf('%3d'$i).' : '.out_arr($arr);
    16     }
    17 }
    18  
    19  
    20 function bubblesort2($array) {
    21     $count count($array);
    22     for($i=0; $i<$count$i++) {
    23         for($j=$count-1; $j>$i$j--) {
    24             if ($array[$j] < $array[$j-1]) {
    25                 $tmp $array[$j];
    26                 $array[$j] = $array[$j-1];
    27                 $array[$j-1] = $tmp;
    28             }
    29         }
    30         echo sprintf('%3d'$i).' : '.out_arr($array);
    31     }
    32     return $array;
    33 }
    34 echo '<pre>';
    35 $arr = range(1, 20);
    36 shuffle($arr);
    37 echo 'ORG : '.out_arr($arr);
    38 bubblesort2($arr);
    39 echo '</pre>';
  • 相关阅读:
    数据库MySQL调优实战经验总结
    Apache常见功能实战详解
    使用HeartBeat实现高可用HA的配置过程详解
    Nginx实现集群的负载均衡配置过程详解
    CentOS系统通过PXE实现批量无人值守安装
    CentOS 7 网卡命名修改为eth0格式
    Nagios 系统监控基本安装配置过程详解
    LAMP 系统服务搭建过程详解
    使用 python 管理 mysql 开发工具箱
    C++标准库string类型的使用和操作总结
  • 原文地址:https://www.cnblogs.com/yyjie/p/7485087.html
Copyright © 2020-2023  润新知