• 快速排序


    快速排序是冒泡排序的改进,效率比较高,基本思想也是两两相比较。

    public class QuickSort {
    public static void main(String[] args) {
    int[] arr = {1, 4, 11, 63, 92, 2, -2, -3, -6, 0};
    quickSort(arr, 0, arr.length - 1);
    System.out.println(Arrays.toString(arr));
    }

    public static void quickSort(int[] arr, int low, int high) {
    //当low和high是一个数的时候就结束
    if (low >= high) {
    return;
    }
    //i和j从两头往中间靠,直到相等即结束
    int i = low;
    int j = high;
    int key = arr[i];//基准值

    while (i < j) {
    while (arr[j] >= key && i < j) {
    j--;
    }
    if (i < j) {//交换
    int t;
    t = arr[i];
    arr[i] = arr[j];
    arr[j] = t;
    }

    while (arr[i] <= key && i < j) {
    i++;
    }
    if (i < j) {//交换
    int t;
    t = arr[i];
    arr[i] = arr[j];
    arr[j] = t;
    }

    }
    //对基准左侧集合重复执行
    quickSort(arr, low, i - 1);
    //对基准右侧集合重复执行
    quickSort(arr, i + 1, high);
    }
    }
    排序结果:[-6, -3, -2, 0, 1, 2, 4, 11, 63, 92]
  • 相关阅读:
    MQTT
    群晖搭建webssh
    OSI 协议
    centos7 yum安装ffmpeg,以及ffmpeg的简单用法
    centos7 RTMP直播服务器搭建
    elasticsearch
    H5的storage
    bootstrap 列表組
    eclipse的debug模式下启动不了tomcat
    bootstrap collapse
  • 原文地址:https://www.cnblogs.com/jasonboren/p/10779150.html
Copyright © 2020-2023  润新知