zoukankan      html  css  js  c++  java
  • php 快速排序

    function quickSort(array $array){
             $len = count($array);
             if($len <= 1){
                 return $array;
             }
             $key = $array[0];
             $left = array();
             $right = array();
             for($i=1; $i<$len; $i++)
             {    //echo $i . '&nbsp;';
                 if($array[$i] < $key) {
                    
                    $left[] = $array[$i];
                 }
                 else{
                     
                     $right[] = $array[$i];
                 }
             }
             $left = quickSort($left);
             $right = quickSort($right);
             
         //这里都是注释
    var_dump($left); echo 'left' . '&nbsp;'. "<br>"; var_dump(array($key)); echo 'key' . '&nbsp;'. "<br>"; var_dump($right); echo 'right' . '&nbsp;'. "<br>"; var_dump(array_merge($left, array($key), $right)); echo 'array_mergeght' . '&nbsp;'. "<br>"; echo '<br>';      
         //查看递归出来的数组,记得要从后往前看,而且顺序已经改变
         //最后的return都是直接给$left or $right;      

    return array_merge($left, array($key), $right); } // print '<pre>'; print_r(quickSort(array(1,4,22,5,7,6,9))); //print '</pre>';

    最主要的就是记得,递归.

  • 相关阅读:
    流程控制
    小结
    运算符
    进制之间的转换
    自动类型转换和强制类型转换
    变量
    关键字,标识符,
    NGINX 做TCP转发(端口转发)并记录日志
    redash安装
    解决 es CircuitBreakingException 问题(Data too large Error)
  • 原文地址:https://www.cnblogs.com/wicub/p/3221723.html
Copyright © 2011-2022 走看看