Advertisement

快速排序方法

阅读量:
      • 算法原理
      • 算法实现
      • 如何选择基准数
      • 如何处理重复数据

——————算法原理——————

快速排序算法一种最常见的排序算法,其核心思想就是 分治 ,具体的:

(1) 选定一个基准数;

数据分区时,在处理数据分类时,请根据需要将全部大于基准数值的数据归为一类,并将全部低于或等于基准数值的数据归为另一类;

(3) 递归,对上述分区重复(1)(2),直到每个分区只有一个数。
———————————————————————————

下面看一个动画来快速理解该算法是怎么工作的:

这里写图片描述

—————————— 算法实现 ——————————

在原理部分的基础上, 我们或许可以预测算法的关键点主要涉及基准数的选择和分区存储

根据分区方法的不同,通常有两种处理策略:


一种称之为Lomuto 分区策略:

先上伪代码:

复制代码
    // 递归
    quicksort(A, low, high)
    if low 

全部评论 (0)

还没有任何评论哟~