zoukankan      html  css  js  c++  java
  • 排序算法-快速排序

    思路: 通过一趟排序将待排记录分割成独立的两部分,其中一部分的关键字均比另一部分记录的关键字小,则可分别对这两部分记录进行排序,已达到整个序列有序的目的。

    复杂度: O(logn)

    function quickSort(&$list, $left, $right){
        $_left = $left;
        $_right = $right;
        if($_left < $_right){
           $temp = $list[$left];
           while($_left != $_right){
               while($_left < $_right && $list[$_right] >= $temp){
                    $_right--;
               }
               $list[$_left] = $list[$_right];
                     
               while($_left < $_right && $list[$_left] <= $temp){
                    $_left++;
               }
               $list[$_right] = $list[$_left];
           }
           $list[$_right] = $temp;
           quickSort($list, $left, $_left - 1);
           quickSort($list, $_right + 1, $_right);
        }
    }
    
  • 相关阅读:
    [AX]AX2012开发新特性outer join中使用QueryFilter
    [AX]AX2012开发新特性表继承
    docker环境安装
    poj 3469
    poj 1187
    poj 1159
    poj 2135
    poj 1273
    poj 1458
    poj 1141
  • 原文地址:https://www.cnblogs.com/onlycat/p/10391525.html
Copyright © 2011-2022 走看看