快速排序(Quicksort)
-
基础介绍
快速排序是对冒泡排序的一种改进。
-
基本思想
通过一趟排序,将要排序的数据分割成独立的两部分,其中一部分的所有数据都要比另一部分的所有数据要小,然后按此方法对这两部数据分别进行快速排序,整个排序过程可以递归进行,于此达到整个数据变成有序序列
-
快排示意图
- 代码演示——递归(1s_8百万)
特点:单while含双while
package DataStructures.Sort;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
public class QuickSort {
public static void main(String[] args) {
//int arr[] = {-9, 78, 0, 23, 0, -567, 70};
//测试一个八万的数组的时间复杂度
//预测O(n^2)
int arr[] = new int[80000];
for